96
|
1 |
<HTML>
|
|
2 |
<HEAD>
|
|
3 |
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
|
|
4 |
<TITLE>G4ip Prover</TITLE>
|
|
5 |
</HEAD>
|
|
6 |
<BODY TEXT="#000000" BGCOLOR="#C7C3C7" LINK="#0000EF" VLINK="#51188E" ALINK="#FF0000">
|
|
7 |
|
|
8 |
<H2>Prover for G4ip (LJT) </H2>
|
|
9 |
|
|
10 |
<A HREF="README">Readme</A>
|
|
11 |
|
|
12 |
|
|
13 |
<HR>
|
|
14 |
<B>Formulae:</B>
|
|
15 |
F ::= <CODE>false</CODE>
|
|
16 |
| A
|
|
17 |
| F <CODE>&</CODE> F
|
|
18 |
| F <CODE>v</CODE> F
|
|
19 |
| F <CODE>-></CODE> F
|
|
20 |
| F <CODE><-></CODE> F
|
|
21 |
| (F)<BR>
|
|
22 |
<B>Sequents:</B> <CODE>=></CODE> F or
|
|
23 |
[F,]* F <CODE>=></CODE> F
|
|
24 |
|
|
25 |
<HR>
|
|
26 |
<B>Inference Rules:</B>
|
|
27 |
<A HREF="G4ip.html">html</A>,
|
|
28 |
<A HREF="G4ip.dvi">dvi</A> or
|
|
29 |
<A HREF="G4ip.ps">ps</A>.
|
|
30 |
|
|
31 |
<HR>
|
|
32 |
<B>Start:</B> starts the proof search,
|
|
33 |
<B>Clear:</B> clears the text fields,<BR>
|
|
34 |
<B>Next:</B> searches for the next proof,
|
|
35 |
<B>Stop:</B> stops the proof search.
|
|
36 |
|
|
37 |
<HR>
|
|
38 |
<!-- APPLET code="G4ip/ProverApplet.class" width=600 height=100 -->
|
|
39 |
<APPLET code="G4ip/ProverApplet.class" archive="G4ip/ProverApplet.jar" width=600 height=100>
|
|
40 |
<PARAM name="LHS_size" value="22">
|
|
41 |
<PARAM name="RHS_size" value="37">
|
|
42 |
</APPLET>
|
|
43 |
|
|
44 |
|
|
45 |
<HR>
|
|
46 |
<B>Provable Examples:</B>
|
|
47 |
<TT>
|
|
48 |
<DL>
|
|
49 |
<DD> => (p v (q v r)) <-> ((p v q) v r)</DD>
|
|
50 |
<DD> => (p & (q & r)) <-> ((p & q) & r)</DD>
|
|
51 |
<DD> => (p & (q v r)) <-> ((p & q) v (p & r))</DD>
|
|
52 |
<DD> => (p v (q & r)) <-> ((p v q) & (p v r))</DD>
|
|
53 |
<DD> => (p -> p) -> (p -> p)</DD>
|
|
54 |
<DD> => (a -> (b -> c)) -> ((a -> b) -> (a -> c))</DD>
|
|
55 |
<DD> => a -> ((a -> b) -> a)</DD>
|
|
56 |
<DD> => b -> ((a -> b) -> b)</DD>
|
|
57 |
<DD> => (a & b) -> (b & a)</DD>
|
|
58 |
<DD> => (a -> (a -> b)) -> (a -> b)</DD>
|
|
59 |
<DD> => ((((p -> q) -> p) -> p) -> q) -> q</DD>
|
|
60 |
<DD> => (a v (a -> b)) -> (((a -> b) -> a)-> a)</DD>
|
|
61 |
<DD> => (a -> (b -> false)) -> (b -> (a -> false))</DD>
|
|
62 |
<DD> => ((a v (a -> false))-> false)-> false</DD>
|
|
63 |
<DD>a & b, c & d => b & c</DD>
|
|
64 |
<DD>(a v (a-> false)) -> false => false</DD>
|
|
65 |
</DL>
|
|
66 |
</TT>
|
|
67 |
|
|
68 |
<B>Non-Provable Examples:</B>
|
|
69 |
<TT>
|
|
70 |
<DL>
|
|
71 |
<DD> => ((a -> b) -> a) -> a</DD>
|
|
72 |
<DD> => a v (a -> false)</DD>
|
|
73 |
<DD> => (a & b v (((( a-> flase) -> false) -> q) v (b -> q)) -> q) -> q</DD>
|
|
74 |
</DL>
|
|
75 |
</TT>
|
|
76 |
|
|
77 |
|
|
78 |
<A HREF="fun.html">Some advanced examples</A>
|
|
79 |
|
|
80 |
<HR>
|
|
81 |
<B>Source Code:</B>
|
|
82 |
<A HREF="Formulae.pizza">Formulae</A>,
|
|
83 |
<A HREF="Contexts.pizza">Contexts</A>,
|
|
84 |
<A HREF="Sequents.pizza">Sequents</A>,
|
|
85 |
<A HREF="ProofDisplay.pizza">ProofDisplay</A>,
|
|
86 |
<A HREF="Prover.pizza">Prover</A>,
|
|
87 |
<A HREF="Parser.pizza">Parser</A>,
|
|
88 |
<A HREF="ProverApplet.pizza">Applet</A><BR>
|
|
89 |
|
|
90 |
|
|
91 |
<HR>
|
|
92 |
<B>Lambda Prolog Version:</B> The programm
|
|
93 |
<A HREF="G4ip.mod">G4ip.mod</A> can be executed using
|
|
94 |
<A HREF="http://www.cis.upenn.edu/~dale/lProlog/terzo/index.html">Terzo</A>
|
|
95 |
Another implementation of G4ip by Joshua Hodas and Dale Miller written in
|
|
96 |
<A HREF="http://www.cs.hmc.edu/~hodas/research/lolli/">Lolli</a> can be found
|
|
97 |
<A HREF="ftp://ftp.cse.psu.edu/pub/dale/ic94-code/index.html">here</A>.
|
|
98 |
|
|
99 |
|
|
100 |
<HR>
|
|
101 |
<ADDRESS>
|
|
102 |
<A HREF="mailto:Christian.Urban@cl.cam.ac.uk">Christian Urban</A></ADDRESS>
|
|
103 |
|
|
104 |
|
|
105 |
<P><!-- Created: Tue Mar 4 00:23:25 GMT 1997 -->
|
|
106 |
<!-- hhmts start -->
|
|
107 |
Last modified: Sun May 10 18:18:28 GMT 1998
|
|
108 |
<!-- hhmts end -->
|
|
109 |
</BODY>
|
|
110 |
</HTML>
|