I do a lot of cow boy coding and nothing is set in stone but : 

1) I would like to start looking into mm0 and building Mephistolus over mm0
(because at one point, I will want user to be able to add definitions of 
their own and I will need the added soundness, as well as the simpler 
parsing, and maybee other stuff that I don't understand yet)

Also, by building mephistolus on mm and mm0, It'll become more generic and 
probably better (closer to true maths).


2) I need to extend the capacities of Mephistolus
I couldn't export a few mephistolus theorems to metamath because the 
Mephistolus 4 features wre lacking (regarding location of expression in 
various sets, proving that some stuff is =/= 0 ). 
Exporting them to metamath will drive Mephistolus features developement

Also, Mephistolus only supports a very limited set of operators as of now 
(->, <->, -., +, -, x, /, -u). I need to slowly add more operators (I have 
to rework the quickly hacked sum_ support I had, prod_, forall, exists...) 
to make Mephistolus more useful

3) Some core Statement api may still be improved

a) I just realized today that I had to enable the user to apply a theorem 
to an equality like in 

|- 2 < 3

apply x |-> -u x to get

|- -u 3 < -u 2

We have all used this process so many times that we would miss it if it 
wasn't there... 
I just have to figure out a good way to bake it in


b) my current api (with .eq, .imp, .a .b .c ...) is quite nice to work with 
but I got another idea to make it more generic and simpler, I want to 
explore that


4) making metamath theorems available in mephistolus 

a) now that I have proved a lot of Mephistolus theorems in metamath, and 
that I know what I am doing, I should write a method to enhance most 
metamath theorems into mephistolus theorems.
I should be able to convert 10000+ metamath theorems into mephistolus to 
make them available (Mephistolus can, out of the box, use any metamath 
theorem but Mephistolus theorems are a lot better to work with because the 
Mephistolus api is designed to work with them)

b) I should implement something that makes it easy for a user (not me) to 
select a mephistolus theorem

For example, I don't want user to have to learn ids like "ltsubrpd" to be 
able to call |- ( ph -> ( A - B ) < A )

Maybee something like select("a-b<a") where you can select a theorem by 
giving a utf8 string (that's right, NOT ASCII), with alternatives so ascii 
could still be an option
It doesn't have to be perfect as, later, if there are ambiguities, the api 
would suggest completions

Later on, a database with powerfull full text search/indexing capabilities 
would be used (issue, find a library available in Native, JVM, browser that 
enable that. I have experience with  Janusgraph and Lucene on the JVM, but 
they are not multi platform (yet))
to help with that



And that is already enough to make Milestone 5 a lot of work, let's end it 
here ^^;

-- 
You received this message because you are subscribed to the Google Groups 
"Metamath" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/metamath/86b8b35a-cc1a-4fbb-b10e-a7af392cbbde%40googlegroups.com.

Reply via email to