<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>G4ip Prover</TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#C7C3C7" LINK="#0000EF" VLINK="#51188E" ALINK="#FF0000">
<H2>Prover for G4ip (LJT) </H2>
<A HREF="README">Readme</A>
<HR>
<B>Formulae:</B>
F ::= <CODE>false</CODE>
| A
| F <CODE>&</CODE> F
| F <CODE>v</CODE> F
| F <CODE>-></CODE> F
| F <CODE><-></CODE> F
| (F)<BR>
<B>Sequents:</B> <CODE>=></CODE> F or
[F,]* F <CODE>=></CODE> F
<HR>
<B>Inference Rules:</B>
<A HREF="G4ip.html">html</A>,
<A HREF="G4ip.dvi">dvi</A> or
<A HREF="G4ip.ps">ps</A>.
<HR>
<B>Start:</B> starts the proof search,
<B>Clear:</B> clears the text fields,<BR>
<B>Next:</B> searches for the next proof,
<B>Stop:</B> stops the proof search.
<HR>
<!-- APPLET code="G4ip/ProverApplet.class" width=600 height=100 -->
<APPLET code="G4ip/ProverApplet.class" archive="G4ip/ProverApplet.jar" width=600 height=100>
<PARAM name="LHS_size" value="22">
<PARAM name="RHS_size" value="37">
</APPLET>
<HR>
<B>Provable Examples:</B>
<TT>
<DL>
<DD> => (p v (q v r)) <-> ((p v q) v r)</DD>
<DD> => (p & (q & r)) <-> ((p & q) & r)</DD>
<DD> => (p & (q v r)) <-> ((p & q) v (p & r))</DD>
<DD> => (p v (q & r)) <-> ((p v q) & (p v r))</DD>
<DD> => (p -> p) -> (p -> p)</DD>
<DD> => (a -> (b -> c)) -> ((a -> b) -> (a -> c))</DD>
<DD> => a -> ((a -> b) -> a)</DD>
<DD> => b -> ((a -> b) -> b)</DD>
<DD> => (a & b) -> (b & a)</DD>
<DD> => (a -> (a -> b)) -> (a -> b)</DD>
<DD> => ((((p -> q) -> p) -> p) -> q) -> q</DD>
<DD> => (a v (a -> b)) -> (((a -> b) -> a)-> a)</DD>
<DD> => (a -> (b -> false)) -> (b -> (a -> false))</DD>
<DD> => ((a v (a -> false))-> false)-> false</DD>
<DD>a & b, c & d => b & c</DD>
<DD>(a v (a-> false)) -> false => false</DD>
</DL>
</TT>
<B>Non-Provable Examples:</B>
<TT>
<DL>
<DD> => ((a -> b) -> a) -> a</DD>
<DD> => a v (a -> false)</DD>
<DD> => (a & b v (((( a-> flase) -> false) -> q) v (b -> q)) -> q) -> q</DD>
</DL>
</TT>
<A HREF="fun.html">Some advanced examples</A>
<HR>
<B>Source Code:</B>
<A HREF="Formulae.pizza">Formulae</A>,
<A HREF="Contexts.pizza">Contexts</A>,
<A HREF="Sequents.pizza">Sequents</A>,
<A HREF="ProofDisplay.pizza">ProofDisplay</A>,
<A HREF="Prover.pizza">Prover</A>,
<A HREF="Parser.pizza">Parser</A>,
<A HREF="ProverApplet.pizza">Applet</A><BR>
<HR>
<B>Lambda Prolog Version:</B> The programm
<A HREF="G4ip.mod">G4ip.mod</A> can be executed using
<A HREF="http://www.cis.upenn.edu/~dale/lProlog/terzo/index.html">Terzo</A>
Another implementation of G4ip by Joshua Hodas and Dale Miller written in
<A HREF="http://www.cs.hmc.edu/~hodas/research/lolli/">Lolli</a> can be found
<A HREF="ftp://ftp.cse.psu.edu/pub/dale/ic94-code/index.html">here</A>.
<HR>
<ADDRESS>
<A HREF="mailto:Christian.Urban@cl.cam.ac.uk">Christian Urban</A></ADDRESS>
<P><!-- Created: Tue Mar 4 00:23:25 GMT 1997 -->
<!-- hhmts start -->
Last modified: Sun May 10 18:18:28 GMT 1998
<!-- hhmts end -->
</BODY>
</HTML>