On Tue, May 13, 2008 at 6:32 PM, Zach wrote: >> >> > so what I would like is for axiom to solve this by >> > >> > a * v1 . v1 = v2 . v1 >> > a = (v2 . v1) / (v1 . v1) >> > >> > Bill Page wrote: >> ??? This is not a solution to the original equation! > > Hmm, the problem is that this equation is in danger of having no solution. > I guess there is an implicit assumption that this has a solution for some > nonzero v2, meaning the vectors must be parallel. My boss gave me a > problem something like this and I am walking on shaky legs at the > moment as I haven't tried to solve problems like these before.
Ok, I like this problem. Of course I agree that *if* this equation has a solution then what you wrote is the solution. The situation is not so different in a lot of other cases of symbolic "solutions". > > I guess the correct thing to do is notice that v1 and v2 must be parallel, > and then deal with the magnitudes, a=|v2|/|v1|. Once you accept this > my solution works too, as with unit vector u in the direction of v1 and > v2, v1 = |v1| u and v2 = |v2| u, v1 . v2 = |v1| |v2| u . u = |v1| |v2| and > v1 . v1 = |v1|^2. Right? Right. Thanks for explaining your point of view. > Please feel free to point out any misconceptions I am fostering. Something similar has been discussed by Tim Daly and Gabriel Dos Reis in the thread "Provisos": http://lists.gnu.org/archive/html/axiom-developer/2008-05/msg00067.html > > Anyway, I guess I chose too simple of an example. No, it is a good example. I think your example is interesting because it illustrates a kind of proviso that is not naturally represented as an interval on some domain. > But never mind that. (The original problem was to find tuples of reals > (n1, n2, m1, m2) such that n1*a1 + n2*a2 = m1*b1 + m2*b2 > (where a1, a2, b1, and b2 are 2D vectors).) > >> Well no, not really. Currently Axiom has no domain for symbolic >> computations with vectors. > > I was afraid of that. Over at Maxima they had no facility either. > The only work of this kind that I know about is: Component-Free Vector Algebra in Aldor Songxin Liang, David J. Jeffrey and Stephen M. Watt Proc. Transgressive Computing 2006: An implementation of a component-free symbolic vector algebra in Aldor is presented. This package provides two powerful functions: simplification of vector expressions and the proof of vector identities. The implementation bene¯ts greatly from Aldor's strong typing, which allows several simplification problems that have defeated previous implementations to be solved. http://www.csd.uwo.ca/~watt/pub/reprints/2006-tc-vectalg.pdf >> >> > What is the best way of tackling these types of problems? >> > >> >> It would be possible (and quite interesting) to create a new domain in >> Axiom for symbolic vector calculations. > Aldor can be used as a library compiler for Axiom. I received a copy of the source code for this package from Songxin Liang. It is written for "stand alone" use, i.e. without Axiom. I have been intended to convert it for use within Axiom but have not had sufficient time. Perhaps you are interested? If so, please let me know. > Hmm, okay. So, it would be a good idea to understand how this is done > in polynomial symbolic manipulation before approaching such a task? > Yes. Axiom has a fairly high learning curve but (of course!) I think it is worth the effort. If you continue with some activity in Axiom along these lines please feel free to discuss it here. Regards, Bill Page. _______________________________________________ Axiom-developer mailing list Axiom-developer@nongnu.org http://lists.nongnu.org/mailman/listinfo/axiom-developer