You are not logged in.

- Topics: Active | Unanswered

**sonyafterdark****Member**- Registered: 2005-09-12
- Posts: 28

Can anyone point me to a good place I can download advanced expression simplification software? Easy to use (user friendly - doesn't require learning sintax, program specific coding, etc.) and also freeware (shareware will do also), would be wonderful (yeah, I'm a dreamer). And I don't just mean handling like terms. And if it's not for download (Java applet or somethin') it should at least be able to handle very large expressions.

I've got this huge expression that's just useless in its current form and it really isn't humanly possible to tackle it manually. I really need to get it more compact to make any use of it. Already tried QuickMath, got a WebMathematica timeout error seemingly cause the expression is so large it exceeds allocated processor time or somethin' like that. And nothing else i found even got close to QuickMath. I'm sure the sintax is correct, the brackets are balanced, etc.

Oh, and by the way... the expression is a function of whatever 2 triangles' respective tips' coordinates and should return the area of intersection, if any, between the 2 triangles. Obviously untested.

10q very much. Cheers!!!

An intelligent man usually knows how to reach his goals. A wise man also knows what goals to reach...

Offline

**Ricky****Moderator**- Registered: 2005-12-04
- Posts: 3,791

The best I've seen (which isn't saying much) is either the ti-89 or ti-92 when it comes to simplifying. You can download vti and get an os from www.ti.org so that you can have it on your computer. If you wish to do this and need help, send me an email.

"In the real world, this would be a problem. But in mathematics, we can just define a place where this problem doesn't exist. So we'll go ahead and do that now..."

Offline

**MathsIsFun****Administrator**- Registered: 2005-01-21
- Posts: 7,560

Can we see this 'orrible hequation?

"The physicists defer only to mathematicians, and the mathematicians defer only to God ..." - Leon M. Lederman

Offline

**krassi_holmz****Real Member**- Registered: 2005-12-02
- Posts: 1,906

Yes, I think this forum is better than any simplification software

IPBLE: Increasing Performance By Lowering Expectations.

Offline

**sonyafterdark****Member**- Registered: 2005-09-12
- Posts: 28

OK, here goes. Also, do you know how i might register this as intellectual property once I'm done simplifying it? As far as I know it's the first theorem and only theorem of it's kind. I'd love to get some official recognition of my work. I'd like to see this taught in school some day, along with Pitagora's theorem, etc.

S.i = AREA of the surface of intersection between the whatever 2 triangles. Should range between 0 and, well, a really big positive number. Otherwise I probably need to snap and abs() around the whole thing .

A, B, C = the three tips of the first triangle.

D, E, F = the three tips of the second triangle.

.x, .y = the x and y coordinates of a tip. Not having tested this, I'm not ENTIRELY sure it actually works, but even if it doesn't, it probably only need some minor adjustments here and there, like an abs() or improved clockwise/counterclockwise triangle tip enumeration handling. Guess I'll just have to test it unsimplified. Course, I'll use Excell .

S.i=1/4*(A.x*(C.y-B.y+((A.x-D.x)*(B.y-A.y)*(E.y-D.y)+D.y*(B.y-A.y)*(E.x-D.x)-A.y*(B.x-A.x)*(E.y-D.y))/((B.y-A.y)*(E.x-D.x)-(B.x-A.x)*(E.y-D.y))-((C.x-D.x)*(A.y-C.y)*(E.y-D.y)+D.y*(A.y-C.y)*(E.x-D.x)-C.y*(A.x-C.x)*(E.y-D.y))/((A.y-C.y)*(E.x-D.x)-(A.x-C.x)*(E.y-D.y)))+B.x*(A.x-C.y+((B.x-E.x)*(C.y-B.y)*(F.y-E.y)+E.y*(C.y-B.y)*(F.x-E.x)-B.y*(C.x-B.x)*(F.y-E.y))/((C.y-B.y)*(F.x-E.x)-(C.x-B.x)*(F.y-E.y))-((A.x-E.x)*(B.y-A.y)*(F.y-E.y)+E.y*(B.y-A.y)*(F.x-E.x)-A.y*(B.x-A.x)*(F.y-E.y))/((B.y-A.y)*(F.x-E.x)-(B.x-A.x)*(F.y-E.y)))+C.x*(B.y-A.y+((C.x-F.x)*(A.y-C.y)*(D.y-F.y)+F.y*(A.y-C.y)*(D.x-F.x)-C.y*(A.x-C.x)*(D.y-F.y))/((A.y-C.y)*(D.x-F.x)-(A.x-C.x)*(D.y-F.y))-((B.x-F.x)*(C.y-B.y)*(D.y-F.y)+F.y*(C.y-B.y)*(D.x-F.x)-B.y*(C.x-B.x)*(D.y-F.y))/((C.y-B.y)*(D.x-F.x)-(C.x-B.x)*(D.y-F.y)))+D.x*(F.y-E.y+((C.x-D.x)*(A.y-C.y)*(E.y-D.y)+D.y*(A.y-C.y)*(E.x-D.x)-C.y*(A.x-C.x)*(E.y-D.y))/((A.y-C.y)*(E.x-D.x)-(A.x-C.x)*(E.y-D.y))-((C.x-F.x)*(A.y-C.y)*(D.y-F.y)+F.y*(A.y-C.y)*(D.x-F.x)-C.y*(A.x-C.x)*(D.y-F.y))/((A.y-C.y)*(D.x-F.x)-(A.x-C.x)*(D.y-F.y)))+E.x*(D.y-F.y+((A.x-E.x)*(B.y-A.y)*(F.y-E.y)+E.y*(B.y-A.y)*(F.x-E.x)-A.y*(B.x-A.x)*(F.y-E.y))/((B.y-A.y)*(F.x-E.x)-(B.x-A.x)*(F.y-E.y))-((A.x-D.x)*(B.y-A.y)*(E.y-D.y)+D.y*(B.y-A.y)*(E.x-D.x)-A.y*(B.x-A.x)*(E.y-D.y))/((B.y-A.y)*(E.x-D.x)-(B.x-A.x)*(E.y-D.y)))+F.x*(E.y-D.y+((B.x-F.x)*(C.y-B.y)*(D.y-F.y)+F.y*(C.y-B.y)*(D.x-F.x)-B.y*(C.x-B.x)*(D.y-F.y))/((C.y-B.y)*(D.x-F.x)-(C.x-B.x)*(D.y-F.y))-((B.x-E.x)*(C.y-B.y)*(F.y-E.y)+E.y*(C.y-B.y)*(F.x-E.x)-B.y*(C.x-B.x)*(F.y-E.y))/((C.y-B.y)*(F.x-E.x)-(C.x-B.x)*(F.y-E.y)))+((A.y-D.y)*(B.x-A.x)*(E.x-D.x)+D.x*(B.x-A.x)*(E.y-D.y)-A.x*(B.y-A.y)*(E.x-D.x))/((B.x-A.x)*(E.y-D.y)-(B.y-A.y)*(E.x-D.x))*(((C.x-D.x)*(A.y-C.y)*(E.y-D.y)+D.y*(A.y-C.y)*(E.x-D.x)-C.y*(A.x-C.x)*(E.y-D.y))/((A.y-C.y)*(E.x-D.x)-(A.x-C.x)*(E.y-D.y))-A.y+E.y-((A.x-E.x)*(B.y-A.y)*(F.y-E.y)+E.y*(B.y-A.y)*(F.x-E.x)-A.y*(B.x-A.x)*(F.y-E.y))/((B.y-A.y)*(F.x-E.x)-(B.x-A.x)*(F.y-E.y)))+((A.y-E.y)*(B.x-A.x)*(F.x-E.x)+E.x*(B.x-A.x)*(F.y-E.y)-A.x*(B.y-A.y)*(F.x-E.x))/((B.x-A.x)*(F.y-E.y)-(B.y-A.y)*(F.x-E.x))*(((A.x-D.x)*(B.y-A.y)*(E.y-D.y)+D.y*(B.y-A.y)*(E.x-D.x)-A.y*(B.x-A.x)*(E.y-D.y))/((B.y-A.y)*(E.x-D.x)-(B.x-A.x)*(E.y-D.y))-E.y+B.y-((B.x-E.x)*(C.y-B.y)*(F.y-E.y)+E.y*(C.y-B.y)*(F.x-E.x)-B.y*(C.x-B.x)*(F.y-E.y))/((C.y-B.y)*(F.x-E.x)-(C.x-B.x)*(F.y-E.y)))+((B.y-E.y)*(C.x-B.x)*(F.x-E.x)+E.x*(C.x-B.x)*(F.y-E.y)-B.x*(C.y-B.y)*(F.x-E.x))/((C.x-B.x)*(F.y-E.y)-(C.y-B.y)*(F.x-E.x))*(((A.x-E.x)*(B.y-A.y)*(F.y-E.y)+E.y*(B.y-A.y)*(F.x-E.x)-A.y*(B.x-A.x)*(F.y-E.y))/((B.y-A.y)*(F.x-E.x)-(B.x-A.x)*(F.y-E.y))-B.y+F.y-((B.x-F.x)*(C.y-B.y)*(D.y-F.y)+F.y*(C.y-B.y)*(D.x-F.x)-B.y*(C.x-B.x)*(D.y-F.y))/((C.y-B.y)*(D.x-F.x)-(C.x-B.x)*(D.y-F.y)))+((B.y-F.y)*(C.x-B.x)*(D.x-F.x)+F.x*(C.x-B.x)*(D.y-F.y)-B.x*(C.y-B.y)*(D.x-F.x))/((C.x-B.x)*(D.y-F.y)-(C.y-B.y)*(D.x-F.x))*(((B.x-E.x)*(C.y-B.y)*(F.y-E.y)+E.y*(C.y-B.y)*(F.x-E.x)-B.y*(C.x-B.x)*(F.y-E.y))/((C.y-B.y)*(F.x-E.x)-(C.x-B.x)*(F.y-E.y))-F.y+C.y-((C.x-F.x)*(A.y-C.y)*(D.y-F.y)+F.y*(A.y-C.y)*(D.x-F.x)-C.y*(A.x-C.x)*(D.y-F.y))/((A.y-C.y)*(D.x-F.x)-(A.x-C.x)*(D.y-F.y)))+((C.y-F.y)*(A.x-C.x)*(D.x-F.x)+F.x*(A.x-C.x)*(D.y-F.y)-C.x*(A.y-C.y)*(D.x-F.x))/((A.x-C.x)*(D.y-F.y)-(A.y-C.y)*(D.x-F.x))*(((B.x-F.x)*(C.y-B.y)*(D.y-F.y)+F.y*(C.y-B.y)*(D.x-F.x)-B.y*(C.x-B.x)*(D.y-F.y))/((C.y-B.y)*(D.x-F.x)-(C.x-B.x)*(D.y-F.y))-C.y+D.y-((C.x-D.x)*(A.y-C.y)*(E.y-D.y)+D.y*(A.y-C.y)*(E.x-D.x)-C.y*(A.x-C.x)*(E.y-D.y))/((A.y-C.y)*(E.x-D.x)-(A.x-C.x)*(E.y-D.y)))+((C.y-D.y)*(A.x-C.x)*(E.x-D.x)+D.x*(A.x-C.x)*(E.y-D.y)-C.x*(A.y-C.y)*(E.x-D.x))/((A.x-C.x)*(E.y-D.y)-(A.y-C.y)*(E.x-D.x))*(((C.x-F.x)*(A.y-C.y)*(D.y-F.y)+F.y*(A.y-C.y)*(D.x-F.x)-C.y*(A.x-C.x)*(D.y-F.y))/((A.y-C.y)*(D.x-F.x)-(A.x-C.x)*(D.y-F.y))-D.y+A.y-((A.x-D.x)*(B.y-A.y)*(E.y-D.y)+D.y*(B.y-A.y)*(E.x-D.x)-A.y*(B.x-A.x)*(E.y-D.y))/((B.y-A.y)*(E.x-D.x)-(B.x-A.x)*(E.y-D.y))))

Told you it's horrid, didn't I?

By the way: I really, really don't get what www.ti.org has to do with this? Could you please give me a direct link to the stuff you indicated?

*Last edited by sonyafterdark (2005-12-16 23:11:30)*

An intelligent man usually knows how to reach his goals. A wise man also knows what goals to reach...

Offline

**sonyafterdark****Member**- Registered: 2005-09-12
- Posts: 28

OpenOffice Err:512 code:

512: Formula overflow

Compiler: the total number of internal tokens, (that is, operators, variables, brackets) in the formula exceeds 512. Interpreter: the total number of matrices that the formula creates exceeds 150. This includes basic functions that receive too large an array as a parameter (max. 0xFFFE, for example, 65534 bytes).

Now, isn't that nice?!!! Just Great!!! X(

An intelligent man usually knows how to reach his goals. A wise man also knows what goals to reach...

Offline

**MathsIsFun****Administrator**- Registered: 2005-01-21
- Posts: 7,560

Added some spaces around each "/", and removed the "."s, so it shows up better:

S.i=1 / 4*(Ax*(Cy-By+((Ax-Dx)*(By-Ay)*(Ey-Dy)+Dy*(By-Ay)*(Ex-Dx)-Ay*(Bx-Ax)*(Ey-Dy)) / ((By-Ay)*(Ex-Dx)-(Bx-Ax)*(Ey-Dy))-((Cx-Dx)*(Ay-Cy)*(Ey-Dy)+Dy*(Ay-Cy)*(Ex-Dx)-Cy*(Ax-Cx)*(Ey-Dy)) / ((Ay-Cy)*(Ex-Dx)-(Ax-Cx)*(Ey-Dy)))+Bx*(Ax-Cy+((Bx-Ex)*(Cy-By)*(Fy-Ey)+Ey*(Cy-By)*(Fx-Ex)-By*(Cx-Bx)*(Fy-Ey)) / ((Cy-By)*(Fx-Ex)-(Cx-Bx)*(Fy-Ey))-((Ax-Ex)*(By-Ay)*(Fy-Ey)+Ey*(By-Ay)*(Fx-Ex)-Ay*(Bx-Ax)*(Fy-Ey)) / ((By-Ay)*(Fx-Ex)-(Bx-Ax)*(Fy-Ey)))+Cx*(By-Ay+((Cx-Fx)*(Ay-Cy)*(Dy-Fy)+Fy*(Ay-Cy)*(Dx-Fx)-Cy*(Ax-Cx)*(Dy-Fy)) / ((Ay-Cy)*(Dx-Fx)-(Ax-Cx)*(Dy-Fy))-((Bx-Fx)*(Cy-By)*(Dy-Fy)+Fy*(Cy-By)*(Dx-Fx)-By*(Cx-Bx)*(Dy-Fy)) / ((Cy-By)*(Dx-Fx)-(Cx-Bx)*(Dy-Fy)))+Dx*(Fy-Ey+((Cx-Dx)*(Ay-Cy)*(Ey-Dy)+Dy*(Ay-Cy)*(Ex-Dx)-Cy*(Ax-Cx)*(Ey-Dy)) / ((Ay-Cy)*(Ex-Dx)-(Ax-Cx)*(Ey-Dy))-((Cx-Fx)*(Ay-Cy)*(Dy-Fy)+Fy*(Ay-Cy)*(Dx-Fx)-Cy*(Ax-Cx)*(Dy-Fy)) / ((Ay-Cy)*(Dx-Fx)-(Ax-Cx)*(Dy-Fy)))+Ex*(Dy-Fy+((Ax-Ex)*(By-Ay)*(Fy-Ey)+Ey*(By-Ay)*(Fx-Ex)-Ay*(Bx-Ax)*(Fy-Ey)) / ((By-Ay)*(Fx-Ex)-(Bx-Ax)*(Fy-Ey))-((Ax-Dx)*(By-Ay)*(Ey-Dy)+Dy*(By-Ay)*(Ex-Dx)-Ay*(Bx-Ax)*(Ey-Dy)) / ((By-Ay)*(Ex-Dx)-(Bx-Ax)*(Ey-Dy)))+Fx*(Ey-Dy+((Bx-Fx)*(Cy-By)*(Dy-Fy)+Fy*(Cy-By)*(Dx-Fx)-By*(Cx-Bx)*(Dy-Fy)) / ((Cy-By)*(Dx-Fx)-(Cx-Bx)*(Dy-Fy))-((Bx-Ex)*(Cy-By)*(Fy-Ey)+Ey*(Cy-By)*(Fx-Ex)-By*(Cx-Bx)*(Fy-Ey)) / ((Cy-By)*(Fx-Ex)-(Cx-Bx)*(Fy-Ey)))+((Ay-Dy)*(Bx-Ax)*(Ex-Dx)+Dx*(Bx-Ax)*(Ey-Dy)-Ax*(By-Ay)*(Ex-Dx)) / ((Bx-Ax)*(Ey-Dy)-(By-Ay)*(Ex-Dx))*(((Cx-Dx)*(Ay-Cy)*(Ey-Dy)+Dy*(Ay-Cy)*(Ex-Dx)-Cy*(Ax-Cx)*(Ey-Dy)) / ((Ay-Cy)*(Ex-Dx)-(Ax-Cx)*(Ey-Dy))-Ay+Ey-((Ax-Ex)*(By-Ay)*(Fy-Ey)+Ey*(By-Ay)*(Fx-Ex)-Ay*(Bx-Ax)*(Fy-Ey)) / ((By-Ay)*(Fx-Ex)-(Bx-Ax)*(Fy-Ey)))+((Ay-Ey)*(Bx-Ax)*(Fx-Ex)+Ex*(Bx-Ax)*(Fy-Ey)-Ax*(By-Ay)*(Fx-Ex)) / ((Bx-Ax)*(Fy-Ey)-(By-Ay)*(Fx-Ex))*(((Ax-Dx)*(By-Ay)*(Ey-Dy)+Dy*(By-Ay)*(Ex-Dx)-Ay*(Bx-Ax)*(Ey-Dy)) / ((By-Ay)*(Ex-Dx)-(Bx-Ax)*(Ey-Dy))-Ey+By-((Bx-Ex)*(Cy-By)*(Fy-Ey)+Ey*(Cy-By)*(Fx-Ex)-By*(Cx-Bx)*(Fy-Ey)) / ((Cy-By)*(Fx-Ex)-(Cx-Bx)*(Fy-Ey)))+((By-Ey)*(Cx-Bx)*(Fx-Ex)+Ex*(Cx-Bx)*(Fy-Ey)-Bx*(Cy-By)*(Fx-Ex)) / ((Cx-Bx)*(Fy-Ey)-(Cy-By)*(Fx-Ex))*(((Ax-Ex)*(By-Ay)*(Fy-Ey)+Ey*(By-Ay)*(Fx-Ex)-Ay*(Bx-Ax)*(Fy-Ey)) / ((By-Ay)*(Fx-Ex)-(Bx-Ax)*(Fy-Ey))-By+Fy-((Bx-Fx)*(Cy-By)*(Dy-Fy)+Fy*(Cy-By)*(Dx-Fx)-By*(Cx-Bx)*(Dy-Fy)) / ((Cy-By)*(Dx-Fx)-(Cx-Bx)*(Dy-Fy)))+((By-Fy)*(Cx-Bx)*(Dx-Fx)+Fx*(Cx-Bx)*(Dy-Fy)-Bx*(Cy-By)*(Dx-Fx)) / ((Cx-Bx)*(Dy-Fy)-(Cy-By)*(Dx-Fx))*(((Bx-Ex)*(Cy-By)*(Fy-Ey)+Ey*(Cy-By)*(Fx-Ex)-By*(Cx-Bx)*(Fy-Ey)) / ((Cy-By)*(Fx-Ex)-(Cx-Bx)*(Fy-Ey))-Fy+Cy-((Cx-Fx)*(Ay-Cy)*(Dy-Fy)+Fy*(Ay-Cy)*(Dx-Fx)-Cy*(Ax-Cx)*(Dy-Fy)) / ((Ay-Cy)*(Dx-Fx)-(Ax-Cx)*(Dy-Fy)))+((Cy-Fy)*(Ax-Cx)*(Dx-Fx)+Fx*(Ax-Cx)*(Dy-Fy)-Cx*(Ay-Cy)*(Dx-Fx)) / ((Ax-Cx)*(Dy-Fy)-(Ay-Cy)*(Dx-Fx))*(((Bx-Fx)*(Cy-By)*(Dy-Fy)+Fy*(Cy-By)*(Dx-Fx)-By*(Cx-Bx)*(Dy-Fy)) / ((Cy-By)*(Dx-Fx)-(Cx-Bx)*(Dy-Fy))-Cy+Dy-((Cx-Dx)*(Ay-Cy)*(Ey-Dy)+Dy*(Ay-Cy)*(Ex-Dx)-Cy*(Ax-Cx)*(Ey-Dy)) / ((Ay-Cy)*(Ex-Dx)-(Ax-Cx)*(Ey-Dy)))+((Cy-Dy)*(Ax-Cx)*(Ex-Dx)+Dx*(Ax-Cx)*(Ey-Dy)-Cx*(Ay-Cy)*(Ex-Dx)) / ((Ax-Cx)*(Ey-Dy)-(Ay-Cy)*(Ex-Dx))*(((Cx-Fx)*(Ay-Cy)*(Dy-Fy)+Fy*(Ay-Cy)*(Dx-Fx)-Cy*(Ax-Cx)*(Dy-Fy)) / ((Ay-Cy)*(Dx-Fx)-(Ax-Cx)*(Dy-Fy))-Dy+Ay-((Ax-Dx)*(By-Ay)*(Ey-Dy)+Dy*(By-Ay)*(Ex-Dx)-Ay*(Bx-Ax)*(Ey-Dy)) / ((By-Ay)*(Ex-Dx)-(Bx-Ax)*(Ey-Dy))))

[Copyright © 2005 by sonyafterdark ]

"The physicists defer only to mathematicians, and the mathematicians defer only to God ..." - Leon M. Lederman

Offline

**sonyafterdark****Member**- Registered: 2005-09-12
- Posts: 28

Yes, thank you. But can you help with simplification or at least testing? I can't even run this in OpenOffice Calc without getting that nasty overflow error. I can ramove the dots in WordPad easily. That's not such a great concern.

Offline

**krassi_holmz****Real Member**- Registered: 2005-12-02
- Posts: 1,906

I've simplifed mathisfun's equation, but very little.

IPBLE: Increasing Performance By Lowering Expectations.

Offline

**krassi_holmz****Real Member**- Registered: 2005-12-02
- Posts: 1,906

Here's my simplification

IPBLE: Increasing Performance By Lowering Expectations.

Offline

**John E. Franklin****Member**- Registered: 2005-08-29
- Posts: 3,588

Maybe you could have many smaller equations if you

broke them into categories of the polygons created??

**igloo** **myrtilles** **fourmis**

Offline

**MathsIsFun****Administrator**- Registered: 2005-01-21
- Posts: 7,560

It is an impressive formula, but I think you may still need to break it down into smaller formulas with decisions in between (ie, write a program to solve).

Why? Because you will end up dividing by zero when points intersect!

For example, look at "/ ((By-Ay)*(Ex-Dx)-(Bx-Ax)*(Ey-Dy))", which is at the end of the formula ... what happens when point A and B have the same position?

"The physicists defer only to mathematicians, and the mathematicians defer only to God ..." - Leon M. Lederman

Offline

**krassi_holmz****Real Member**- Registered: 2005-12-02
- Posts: 1,906

And for the WebMathematica timeout error:

Just the simplification in Mathematica is limited to 300 seconds

IPBLE: Increasing Performance By Lowering Expectations.

Offline

**John E. Franklin****Member**- Registered: 2005-08-29
- Posts: 3,588

This polygon area might be useful somehow on this project.

general area of polygon with points going around and returning at start point

**igloo** **myrtilles** **fourmis**

Offline