
Show HN: Proof Companion – Geometry proof practice for students - neap24
http://www.proofcompanion.com
======
Tojot
It's frustrating.

First, I've got proof no. 3. I can offer a nice 4 argument proof, but you
wouldn't let me provide it. Second, I tried proof no. 2, where I'm offered
words like given and algebra I have no use for.

To make a system like this right it needs to be deductive and have a large
library of concepts. Getting this right is complex enough to be a PhD project.
Properly scoped could be done for MSc.

~~~
yorwba
For proof 2, "Given" is the reason for "ABCD is a kite" and "Algebra" is the
reason for "BD = BD". I found that relatively obvious after I understood the
purpose of the "statement" and "reason" columns.

If you treat it as a kind of puzzle where you have to arrange the given blocks
to form a valid proof, it's not so bad. However, you should at least be able
to reorder independent statements, and reasons should include references to
the previous statements they depend on, e.g. in proof 4, "<A = <D" follows by
"Substitution" only because the previous statement is "<EBC = <A and <ECB =
<D". In longer proofs you may have to refer to something proved further up,
and requiring the student to give the reference would be a further check of
their understanding.

~~~
mannykannot
Figuring out how to use the tool is harder than proving the theorems.

------
netvarun
It'll be great if all the theorems from this are loaded in for practice ;) -
[https://www.mccme.ru/~akopyan/papers/EnGeoFigures.pdf](https://www.mccme.ru/~akopyan/papers/EnGeoFigures.pdf)

------
eru
It's a shame Cinderella seems largely defunct. ([https://cinderella.de/tiki-
index.php](https://cinderella.de/tiki-index.php))

They had ways to generate geometric proofs from constructions alone.

------
alew1
Neat! Is there one correct solution for each proof, or is there something more
complex going on behind the scenes?

~~~
neap24
For now, there is one correct solution. So it's dependent on the teacher to
pin any statements/reasons to ensure there's only one possible answer. I have
some ideas for making it more flexible in the future, but haven't quite solved
the user interface problem for assigning parent and child steps.

~~~
lbeziaud
Using something like Geocoq [0] to check the proof would be amazing.

[0] [http://geocoq.github.io/GeoCoq/](http://geocoq.github.io/GeoCoq/)

