]> matita.cs.unibo.it Git - helm.git/blob - matitaB/matita/contribs/ng_TPTP/ROB005-1.ma
New management of justifications.
[helm.git] / matitaB / matita / contribs / ng_TPTP / ROB005-1.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: ROB005-1.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : ROB005-1 : TPTP v3.7.0. Released v1.0.0. *)
8
9 (*  Domain   : Robbins Algebra *)
10
11 (*  Problem  : Exists an idempotent element => Boolean *)
12
13 (*  Version  : [Win90] (equality) axioms. *)
14
15 (*  English  : If there is an element c such that c+c=c, then the algebra  *)
16
17 (*             is Boolean. *)
18
19 (*  Refs     : [HMT71] Henkin et al. (1971), Cylindrical Algebras *)
20
21 (*           : [Win90] Winker (1990), Robbins Algebra: Conditions that make a *)
22
23 (*           : [Ove90] Overbeek (1990), ATP competition announced at CADE-10 *)
24
25 (*           : [LW92]  Lusk & Wos (1992), Benchmark Problems in Which Equalit *)
26
27 (*           : [Ove93] Overbeek (1993), The CADE-11 Competitions: A Personal  *)
28
29 (*           : [LM93]  Lusk & McCune (1993), Uniform Strategies: The CADE-11  *)
30
31 (*           : [Zha93] Zhang (1993), Automated Proofs of Equality Problems in *)
32
33 (*  Source   : [Ove90] *)
34
35 (*  Names    : CADE-11 Competition Eq-2 [Ove90] *)
36
37 (*           : Lemma 2.4 [Win90] *)
38
39 (*           : RA3 [LW92] *)
40
41 (*           : THEOREM EQ-2 [LM93] *)
42
43 (*           : PROBLEM 2 [Zha93] *)
44
45 (*           : robbins.occ.in [OTTER] *)
46
47 (*  Status   : Unsatisfiable *)
48
49 (*  Rating   : 0.22 v3.4.0, 0.25 v3.3.0, 0.14 v3.2.0, 0.07 v3.1.0, 0.11 v2.7.0, 0.09 v2.6.0, 0.17 v2.5.0, 0.00 v2.4.0, 0.33 v2.3.0, 0.67 v2.2.1, 0.67 v2.2.0, 0.71 v2.1.0, 0.88 v2.0.0 *)
50
51 (*  Syntax   : Number of clauses     :    5 (   0 non-Horn;   5 unit;   2 RR) *)
52
53 (*             Number of atoms       :    5 (   5 equality) *)
54
55 (*             Maximal clause size   :    1 (   1 average) *)
56
57 (*             Number of predicates  :    1 (   0 propositional; 2-2 arity) *)
58
59 (*             Number of functors    :    5 (   3 constant; 0-2 arity) *)
60
61 (*             Number of variables   :    7 (   0 singleton) *)
62
63 (*             Maximal term depth    :    6 (   3 average) *)
64
65 (*  Comments : Commutativity, associativity, and Huntington's axiom  *)
66
67 (*             axiomatize Boolean algebra. *)
68
69 (* -------------------------------------------------------------------------- *)
70
71 (* ----Include axioms for Robbins algebra  *)
72
73 (* Inclusion of: Axioms/ROB001-0.ax *)
74
75 (* -------------------------------------------------------------------------- *)
76
77 (*  File     : ROB001-0 : TPTP v3.7.0. Released v1.0.0. *)
78
79 (*  Domain   : Robbins algebra *)
80
81 (*  Axioms   : Robbins algebra axioms *)
82
83 (*  Version  : [Win90] (equality) axioms. *)
84
85 (*  English  :  *)
86
87 (*  Refs     : [HMT71] Henkin et al. (1971), Cylindrical Algebras *)
88
89 (*           : [Win90] Winker (1990), Robbins Algebra: Conditions that make a *)
90
91 (*  Source   : [OTTER] *)
92
93 (*  Names    : Lemma 2.2 [Win90] *)
94
95 (*  Status   :  *)
96
97 (*  Syntax   : Number of clauses    :    3 (   0 non-Horn;   3 unit;   0 RR) *)
98
99 (*             Number of atoms      :    3 (   3 equality) *)
100
101 (*             Maximal clause size  :    1 (   1 average) *)
102
103 (*             Number of predicates :    1 (   0 propositional; 2-2 arity) *)
104
105 (*             Number of functors   :    2 (   0 constant; 1-2 arity) *)
106
107 (*             Number of variables  :    7 (   0 singleton) *)
108
109 (*             Maximal term depth   :    6 (   3 average) *)
110
111 (*  Comments :  *)
112
113 (* -------------------------------------------------------------------------- *)
114
115 (* -------------------------------------------------------------------------- *)
116
117 (* -------------------------------------------------------------------------- *)
118 ntheorem prove_huntingtons_axiom:
119  (∀Univ:Type.∀X:Univ.∀Y:Univ.∀Z:Univ.
120 ∀a:Univ.
121 ∀add:∀_:Univ.∀_:Univ.Univ.
122 ∀b:Univ.
123 ∀c:Univ.
124 ∀negate:∀_:Univ.Univ.
125 ∀H0:eq Univ (add c c) c.
126 ∀H1:∀X:Univ.∀Y:Univ.eq Univ (negate (add (negate (add X Y)) (negate (add X (negate Y))))) X.
127 ∀H2:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (add (add X Y) Z) (add X (add Y Z)).
128 ∀H3:∀X:Univ.∀Y:Univ.eq Univ (add X Y) (add Y X).eq Univ (add (negate (add a (negate b))) (negate (add (negate a) (negate b)))) b)
129 .
130 #Univ ##.
131 #X ##.
132 #Y ##.
133 #Z ##.
134 #a ##.
135 #add ##.
136 #b ##.
137 #c ##.
138 #negate ##.
139 #H0 ##.
140 #H1 ##.
141 #H2 ##.
142 #H3 ##.
143 nauto by H0,H1,H2,H3 ##;
144 ntry (nassumption) ##;
145 nqed.
146
147 (* -------------------------------------------------------------------------- *)