THORN is totally Shen coded and relies on compilation to Prolog clauses for speed. It tackles first-order logic without
equality and has an extension for equality. I've just tested THORN 3 which produces a better proof for equivalential calculus
than THORN 1 (72 steps for THORN 3 vs 96 for THORN 1).
THORN can do some problems that humans cannot but can't compete against systems like Prover9 and Vampire.
The main utility is that since it is coded in Shen, so it could be used as part of a verification system in Shen.
THORN outputs proofs to a file automatically on success.
(set thorn.*depth* 13) \\ set depth of search to 13
(define mp
{--> prop}
-> [all x [all y [[[p [e x y]] & [p x]] => [p y]]]])
(define yql
{--> prop}
-> [all x [all y [all z [p [e [e x y] [e [e z y] [e x z]]]]]]])
(define ec
{--> prop}
-> [[[p [e x x]] & [p [e [e x y] [e y x]]]]
& [p [e [e x y] [e [e y z] [e x z]]]]])
(kb-> [(mp) (yql)]) \\ assume these props in the knowledge base
(<-kb (ec)) \\ prove this conclusion
run time: 0.59375 secs
5980233 inferences
true
It's provable; output is in prf.txt
Attached is the proof.
M.