You are invited to Log in or Register a free Frihost Account!

# Math Equation Editor and Computer Algebra for Students

mcduck2002
hi every one,
I want to build a component for Office (like Microsoft Office Word) that acts like a smart equation editor.
the component will interact, at the begining, with maxima (a Mathematica free clone). that is, you will insert a kind of an equation and the component will output the result. only the result will be nice (typesetted by Tex).
all i need is people to test and help me with the coding.
the project should be free and open source.
the goal of the project is to help students make math free of charge.
any help or advice will be appreciated.
Guy
foggy
I'd love to help with this project, but I doubt I'd have the time to help any respectable amount, ironically, partially due to the process that something like this would help in.

I would definitely be interested in using a program like this and maybe even beta testing or something, be sure to let us know if you get something going.

Again, sorry for not being able to help and this, in retrospect, relatively useless post.
mcduck2002
first of all, thanks for the respond itself. it seems that i don't realy know how to publish the idea here and since you are a moderator, you are probably more experienced than me in frihost forums.
perhaps you can "spread the word" by using your experience and wisdom as moderator. and why am i asking you? because i think you know the facilities that frihost gives to the users that i don't know (because i'm new), and also because i think you know the right forum to publish such an idea.
now what do you say? can you help me with that?
i really would appreciate such help.
if you need any details, feel free to post (even on private)
Talk2Tom11
I would love to help you with this project. What langauge are you writing it in? Have you thought of about it running off of a website or do you just want to have it as a standalone application. Please let me know what is going on with this project. My e-mail is dodsont@mville.edu. Good Luck with it.
mcduck2002
 Talk2Tom11 wrote: I would love to help you with this project. What langauge are you writing it in? Have you thought of about it running off of a website or do you just want to have it as a standalone application. Please let me know what is going on with this project. My e-mail is dodsont@mville.edu. Good Luck with it.

hi Talk2Tom11,
i'm happy to hear that i have a man on board.
well maxima do run off a web site. i'll find the link if you want. but that is not the meaning of the project.
the project is a component that integrate with office or any other application in windows.

what we need is the knowledge detailed in the next list:
1) knowledge in TEX, LaTex and general knowledge in typesetting (also under Unix).
2) knowledge in component programming in Windows (OLE, COM or .net what ever). i have source code to begin with that uses Win32 and OLE.
3) knowldege specifically in Maxima and Common Lisp. and also how to use Maxima as server (I know it can, it just doesn't work for me, somehow).
4) mathematicians and students are most welcome to help, even in the spiritual level
5) also knowledge in some other commercial environments like Maple, Mathematica, MathCAD, muPad etc.
6) knowledge in the opensource environments like Axiom, Reduce, Octave and any other opensource environment
7) knowledge in MathML
8 ) if there is anyone who knows how to build/open sourceforge site I wuold realy appreciate that.
9) the compoent would be written in C++ since i know that language and since i've the source code in c++ to start with. so right now i'm focusing on C++.
10) any other knowledge or links to relevant project would be happily appreciated.

I hope I made some help for you, I want to hear from you again for your advice and any other user in these forums who has any interest in such a project.
mcduck2002
http://maxima.sourceforge.net/
http://kayali.sourceforge.net/
http://www.miktex.org/
http://www.sunlightd.com/EmbeddedTeX/

http://www.geom.uiuc.edu/events/courses/1996/cmwh/

if anyone wants to get started i would advice to look into the site in the order made.
ocalhoun
I'm pretty sure something like this already exists.
Have you checked various open-source software distributing sites?

I had an old mac (mac OS 5) that had the best calculator ever.
I wish I could remember what it was called.
It was a great function solver, and it could graph solutions in 2d, 3d, and 4d.

Should have never gotten rid of that old mac. Oh well...
mcduck2002
 ocalhoun wrote: I'm pretty sure something like this already exists. Have you checked various open-source software distributing sites? I had an old mac (mac OS 5) that had the best calculator ever. I wish I could remember what it was called. It was a great function solver, and it could graph solutions in 2d, 3d, and 4d. Should have never gotten rid of that old mac. Oh well...

hi ocalhoun,
of course there are other opensource projects that when tied together are doing just what you said. *but*, they are not realy tied together.
let me explain what i'm looking for and then i'll explain what there is out there. i'm looking for a component that holds a calculated formula, both input and output, and the typesetted result as bitmap (or any other suitable presentation). thats all.
look at it as a smart equation editor for word that can also do the math besides being a tool for formula typesettings.

and you are right! there is one complete commercial product that do just that, it called muPad.
what i'm looking for is similar to muPad for Word 2.0. you can find it in this site:

as for all the sites mentioned before (read my last message above), the applications they represent do only one task, i just want to bring them together.

for example:
1) Maxima (the raw version) can do all the calculation and math. and thats it. it has an ugly text interface. beside from the ability to output the calculation as a typesetted TEX format - which is good!
2) EmbeddedTex - beside the problem of being dependant on old version of MikTex, and thats why it doesn't work. should do a good job by getting TEX input an then embed the output into a document like word.
4) MikTex- i don't need to mention that one... if you use TEX, it depends on that package.
5) gnuPlot - is currently the way to do graphs with Maxima (unless you know of somthing else).

there are some solutions for unix environment (they exist also in windows version) that do just that, but lack the ability to embed an object into another application (which is what i'm looking for) like TexEmacs, iMaxima, eMaxima etc.

there is one great product i want to check out and it called "Kayali" at the site:
http://kayali.sourceforge.net/
it does not work on windows although i've all the prerequisites installed correctly. at the source code (written in python) i found a possible problem in communicatin with Maxima using a socket. i tried to run maxima as a server but it kept giving me an error. i'm not that expert in Maxima so i don't know how fix that problem right now.

it made me frustrated seeing all the puzzles' items infront of my eyes and nothing realy connect as it should.

thats why i'm starting this project. actually i'm already in it, so you are welcome to participate
mcduck2002
hi every one,

i was able to install kyali, a nice graphical front end for maxima, using Windows.
the site of the "kayali" front end is:
http://kayali.sourceforge.net/

here are the instractions:
2) install gnuplot. download from: http://sourceforge.net/project/showfiles.php?group_id=2055&package_id=1996&release_id=231440 and then choose the win32 version.
4) extract kayali project from site: https://sourceforge.net/project/showfiles.php?group_id=121033&package_id=154325&release_id=332875
5) install libgd from (the dll file should be extracted to \windows\system32 or more exactly under %windir%\system32)
6) install pyQT library (the author of the project wrote to me that it is a licensed for GPL and thus free, i didn't checked deeply, but i tend to belive him because QT is free for noncommercial use and PY is GPL) here is the link: http://www.quadgames.com/download/pythonqt/PyQtGPL10.exe
7) find a folder under "Program files" that start with "maxima". then under the "bin" directory you'll find the "maxima.bat". you should copy "maxima.bat" into the kayali folder (where you extracted to).

if any of you tried and succeed, please don't hasitate to share your opinion.

if any of you got inspired, like me, from all the tools, front ends and the interfaces for maxima i mantioned before (not only kayali), and wants to participate to the project, then please do so.
you don't have to be a full time developer/programmer to contribute into such project.

if someone need more material about maxima, what is it? why should we use maxima to check math and what is the difference between maxima and matlab and mathematica, i'll be happy to explain.

good luck with kayali for now.
KHO
 foggy wrote: in retrospect, relatively useless post.
or spam as it is called
l would love to help, l don't know very many languages, the only one l can really code in is xhtml, but l am learning php at a steady rate, and l can help with beta testing, l am very good at math so l would love to help you with that, this sounds like a great idea and l would love to support it!
mcduck2002
 KHO wrote: l would love to help, l don't know very many languages, the only one l can really code in is xhtml, but l am learning php at a steady rate, and l can help with beta testing, l am very good at math so l would love to help you with that, this sounds like a great idea and l would love to support it!

i tried to investigate as much as i could. i think i released the most up to date information there is to find.
Maxima is the main application to use. please try to use this application. if you are overwhelmed from the complexity of the installation of Maxima, and hence afraid to use it, then don't be. I'm here to explain everything I can.

this is the begining... so you should first try and use Maxima. expertise is needed in order to make a good and a polished component. you are good at math.... so i think you'll know what to do with Maxima.

after you install the program, try to use it, with simple exercises. publish your insight form the first time you used Maxima. belive me, there are a lot of peaple that would like to know how you succeed using the application.

i know ways to ease the work with maxima under windows. bear in mind that the main goal of the project is to make the use of maxima (and maybe other CAS application) a lot more than just easy to use (i.e. cool interface and nice typesettings - both exists at some level). the main idea is that an object like this should be embedded in a word document (or whatever document). that why i need you to use the program. so i can design the interface.

learning maxima is the corner stone of the project. mathematicians are exactly the people to use it and give advice. i hope you'll find maxima helpful in your life without any relation to this project.

mcduck2002
hi every one,
if any of you has a link for an old version of miktex, 2.2 (preferable) or 2.1. i would be happy to have it. this package is needed for me to run "Embedded Tex".
"Embedded Tex" is an opensource component for windows that typeset TeX.
TeX is used as an output for Maxima.
I'm gonna do a quick modification for that project in order to learn more about Windows components (OLE) and Maxima.
that modification should make a *Working Machine* or a *Technology Preview*. however, since i don't have the "right" miktex package i'm kind of stuck.
mcduck2002
i finally got "Embedded TeX" to work. that is, i have the source code, the right dll files (hard to find...), and MikTex.

first MikTeX should be installed (preferably 2.3 for this program - i doubt if you would get the whole package, though.)

for the people who don't have the MikTeX 2.3, there is a workaround. install the latest MikTex (2.4) and extract only the dll files from the two cabinet files that you should download form two urls (below):

2) first cabinet file: miktex-runtime-bin.cab (ver 2.3)
3) second cabinet file: miktex-yap-bin.cab (ver 2.3)

after you done all that, its time to install the Embeded Tex component and source code:

1) visit the site Embedded TEX 2.0b. the owner of the site deserve the credit for my project kick start. after all he wrote the original component. i'm only modifying it for the sake of the demonstration of a future component.
3) please read the readme.txt file, it is important. i found that registring the dll file from the dll direrctory (X:\Program Files\David McCabe\Embedded TeX - Where X: is where "Program Files" resides) is necessary. to register the dll file, write inside the directory: (in a command shell) regsvr32 EmbeddedTeX.dll
4) play with the component. open a Word Document and choose from the menu: Insert->Object->Embedded Tex. an empty, and regrettably transparent, object will be placed before the prompt. you can click on it, if you find it if you don't, don't get panic, just use your intuition... and you'll find it.
5) inside the component there are buttons and a textbox. in the omponents' text box, write this funny looking thing:
$$\int {{{1}\over{x^2+2}}}{\;dx}={{\arctan \left({{x}\over{\sqrt{2}}} \right)}\over{\sqrt{2}}}$$
if you wrote the TeX input (above, bold) correctly then you'll see a nice computation of integration. well... not realy a computation, but only the typesetted output of Maxima after a computation.
for not a few people who know how to use Maxima, this solution is more than enough for casual use.

6) This is where the project begin. enough of the manual cut paste! it's time to make Maxima smart and use it as an object inside a word document. this is what I wanted. so download the source code. if you know how to debug dll project files under Visual Studio i'll be glad to get some help. i have a few modifications to do with this component.

7) don't forget to download and install Maxima and wxMaxima and play with it(wxMaxima is pretty nice interface to maxima.)

hope you find this information useful, it was useful for me

that is for today
mcduck2002
does anyone knows of any free site that can host my project. like sourcforge. has anyone registered his own sourceforge, and can tell me how to register and maintain?
KHO
Did you make it into a single .exe file yet? because anyone who wants some math help here and now will not go through the trouble of installing like 5 different things after you do that, you can use www.upload.com and that will put your product on www.download.com, but l prefer sourceforge, l believe they have a registration area in their site. Let us know once you get the completed .exe on a server for download
mcduck2002
though I'll take a pause in this project for a while (a least until february 2nd 2006).
Billwaa
well, I would like to help but I don't know if I am good enough. I just know how to program equations stuffs in calucator so I can use it in test...
bboy_nycb
Is there any software which can do the same as mentioned above and which can be run under Linux?
mike1reynolds
Maxima looks like quite a fascinating program, but it could certainly benefit from MS Word style superscripts and subscripts.

It looks like something of a learning curve; I'd like to know how to do two simple things for fractals and vector math. The first is taking a convoluted equation, say ((x^2+c)^2+c and returning the polynomial coefficients: x^4 + 2cx^2 + c^2+c.

Just the other day I was trying to calculate the equidistant intersection point from a ray to any parabolic tangent. That is to say, given a line and a point on that line, which tangent of a parabola will intersect the line so that the distance from the parabola to the intersection is equal to the distance from the point to the intersection. I was trying to create a conic extrusion of text (flailed in the rear rather than straight back), but XSI (the best 3D package) doesn't provide any method for doing this that won't self-intersect. Self-intersection would be fine if I wasn't using a transparency effect (glass), but when transparent the self-intersections look like internal gaps in the glass. So the above math problem is how you calculate where the extrusion should stop for each point on the extrusion line from each point of the extruded curve.

Anyway, the problem turns out to be a 5th degree equation. So I gave up and tried a search algorithm instead. But that never worked either. While I'm asking, is there a reasonably efficient way to solve for the real roots of a 5th degree equation? (I'm probably asking in the wrong place.)

The other thing I'd love to be able to do is get the Taylor series for odd equation with transcendentals, logs and such.

As to the project, why do you want to use TeX? Why not rtf with math fonts? I don't quite understand the functionality you're trying to achieve, so maybe that is a boneheaded question.
mike1reynolds
Well, I guess that was spam, if I'd read down to the wxMaxima part I would have gotten the answer to the first question. That is HOT!

I'm a C++ developer, BTW. So why not format with TrueType fonts instead of TeX? It could be much more readily manipulated in Word. For example, I much prefer Arial Black to the Times New Roman font that wxMaxima uses. Arial Black looks like the font used for equations in text books.
mcduck2002
 mike1reynolds wrote: I'm a C++ developer, BTW. So why not format with TrueType fonts instead of TeX? It could be much more readily manipulated in Word. For example, I much prefer Arial Black to the Times New Roman font that wxMaxima uses. Arial Black looks like the font used for equations in text books.

1) as for the font problem, you can always choose the font you like in the menu Edit->Configure, under the "style" tab you can choose families of fonts. i guess you already saw that you can only choose monospaced fonts, that is probably because the program is targeted as console to maxima (you can always ask the author of wxMaxima why he did what he has done. )
2) as for the typesettings for printing and maybe publishing... well, thats why i'm here i'm looking for a programmer and a mathematician like you. and if you want to join i would be happy if you share your wisdom with me.

have a nice day
mike1reynolds
 mcduck2002 wrote: 1) as for the font problem, you can always choose the font you like in the menu Edit->Configure, under the "style" tab you can choose families of fonts. i guess you already saw that you can only choose monospaced fonts, that is probably because the program is targeted as console to maxima (you can always ask the author of wxMaxima why he did what he has done. ) 2) as for the typesettings for printing and maybe publishing... well, thats why i'm here i'm looking for a programmer and a mathematician like you. and if you want to join i would be happy if you share your wisdom with me. 3) and yes! it is advisiable to read what i wrote before. it is more informative than it looks. have a nice day

2) I'd be more than happy to help with advice, but I don't have too much extra time for deeply involved programming.
3) I read everything in the thread, but loading wxMaxima answered my 1st question about how to use Maxima. I'm still interested in knowing how to get taylor series from complex transidentals, if it does such a thing.

==================

So here is a question regarding your objective, is there a TeX program that will output JPGs or BMPs of the TeX output that Maxima can generate? If so, then that could be inserted into a Word file, solving your problem with minimal effort. Or was there a more complicated functionality that you wanted?
mcduck2002
 mike1reynolds wrote: So here is a question regarding your objective, is there a TeX program that will output JPGs or BMPs of the TeX output that Maxima can generate? If so, then that could be inserted into a Word file, solving your problem with minimal effort. Or was there a more complicated functionality that you wanted?

I don't want to render the Maxima output as an image, lots of programs can do just that, and they are free (even opensource).
I want a typesetting program, i.e a program or a component that I can edit. that component has its own connection to Maxima (or any other CA system). so there are two feature that i want: 1) tex typesttings inside word, and i've shown a way to do that; and 2) a connection to Maxima insdie that component in order to change the calculation of an updated formula.
i've shown that you can use EmbeddedTex component with some success. but when i'm trying to modify the source code there is problem with the calling method to the tex dll that i couldn't resolve (the method is error prone since it uses physical call the actual function signature from the tex dll, and this is not the way to do the work right!!!) . so if you can make a component that can do that thing it would a huge jumpstart for the project. currently i can't do a thing because i have exams to learn for.
mike1reynolds
> 2) a connection to Maxima insdie that component in order to change the
> calculation of an updated formula.

You mean wxMaxima, I assume. Do you have the wxMaxima source code? Without it there is no way to turn it into an ActiveX control, which is the only way to do what you are asking.

> i've shown that you can use EmbeddedTex component with some
> success. but when i'm trying to modify the source code there is
> problem with the calling method to the tex dll that i couldn't resolve
> (the method is error prone since it uses physical call the actual function
> signature from the tex dll, and this is not the way to do the work
> right!!!) . so if you can make a component that can do that thing it
> would a huge jumpstart for the project.

This also needs to be an ActiveX control, but it doesn't sound useful to me. What is the difference between importing TeX into Word vs. importing a bitmap? It is the same number of steps either way if the formula is modified.
mcduck2002
 mike1reynolds wrote: This also needs to be an ActiveX control, but it doesn't sound useful to me. What is the difference between importing TeX into Word vs. importing a bitmap? It is the same number of steps either way if the formula is modified.

the difference between importing tex or a bitmap is fundemental, since bitmap has a rectangle frame and tex object, although at the final step shows kind of bitmap, the tex object shouldn't have rectangle margins, but instead it should flow after the text of the word document.
i hope you understand what i was trying to say. anyway, if you didn't, then i'll send you a picture to your mail of how tex object should operate under word document.

have a nice day
mike1reynolds
I know exactly what you mean, and sometimes it can be quite tricky in Word, but if Word couldn't do that it wouldn't be worth a hill of beans. You have to work with the settings on the picture to get it to behave the way you want. If you double click on the picture it brings up the Format Picture dialog box, then go to the Layout tab. The most versatile, but also the hardest to use, is Behind text. I often find myself only being able to use that option to achieve what I'm trying to do, but it becomes quite troublesome because you have to go through backflips if you don't want the text to overlap the picture and once the picture is placed, if you decide you want to move it, it can be extremely difficult or even impossible to move it if it is covered by invisible spaces or tabs. In those cases I've had no option but to grab all of the text and paste on to a new document and then insert the picture on that new document.

Admittedly, it isn't always easy, but virtually anything you want to do in terms of formatting text with images is doable in Word.
mcduck2002
do you have any idea how to build an activex with non-rectangular margins?
can you send me an example of an activex that i can put inside a word (or any other) document?
mike1reynolds
 mcduck2002 wrote: do you have any idea how to build an activex with non-rectangular margins? can you send me an example of an activex that i can put inside a word (or any other) document?
I don't know whether or not that is possible, I can only think of one application for such a thing, and easier work arounds, so it is quite possible that the ActiveX interface will not support it. Why on Earth would you want or think you need such a thing?

 mcduck2002 wrote: can you send me an example of an activex that i can put inside a word (or any other) document?
I googled for ActiveX TeX and the first link at http://www.integretechpub.com/ is to several mathematical formula applications, including one called TeXexplorer, an ActiveX control that can be dropped onto a web page or Word document.