]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/contribs/ng_TPTP/LAT025-1.ma
-ng implemented
[helm.git] / helm / software / matita / contribs / ng_TPTP / LAT025-1.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: LAT025-1.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : LAT025-1 : TPTP v3.2.0. Released v2.2.0. *)
8
9 (*  Domain   : Lattice Theory (Ternary Near Lattices) *)
10
11 (*  Problem  : Non-uniqueness of meet (dually join) in TNL *)
12
13 (*  Version  : [MP96] (equality) axioms. *)
14
15 (*  English  : Let's say we have a ternary near-lattice (TNL) with two meet *)
16
17 (*             operations, say meet1 and meet2.  In other words, {join,meet1} *)
18
19 (*             and {join,meet2} are TNLs.  Are the two meets necessarily *)
20
21 (*             the same?  No, they aren't.  Here is a counterexample. *)
22
23 (*  Refs     : [McC98] McCune (1998), Email to G. Sutcliffe *)
24
25 (*           : [MP96]  McCune & Padmanabhan (1996), Automated Deduction in Eq *)
26
27 (*  Source   : [McC98] *)
28
29 (*  Names    : TNL-2 [MP96] *)
30
31 (*  Status   : Satisfiable *)
32
33 (*  Rating   : 0.33 v3.2.0, 0.67 v3.1.0, 0.33 v2.4.0, 0.67 v2.3.0, 1.00 v2.2.1 *)
34
35 (*  Syntax   : Number of clauses     :   15 (   0 non-Horn;  15 unit;   1 RR) *)
36
37 (*             Number of atoms       :   15 (  15 equality) *)
38
39 (*             Maximal clause size   :    1 (   1 average) *)
40
41 (*             Number of predicates  :    1 (   0 propositional; 2-2 arity) *)
42
43 (*             Number of functors    :    5 (   2 constant; 0-2 arity) *)
44
45 (*             Number of variables   :   29 (  12 singleton) *)
46
47 (*             Maximal term depth    :    4 (   2 average) *)
48
49 (*  Comments : The smallest model has 5 elements. *)
50
51 (* -------------------------------------------------------------------------- *)
52
53 (* ----{join,meet} is a TNL: *)
54
55 (* ----{join,meet2} is a TNL: *)
56
57 (* ----Denial of meet=meet2. *)
58 ntheorem prove_meets_equal:
59  ∀Univ:Type.∀X:Univ.∀Y:Univ.∀Z:Univ.
60 ∀a:Univ.
61 ∀b:Univ.
62 ∀join:∀_:Univ.∀_:Univ.Univ.
63 ∀meet:∀_:Univ.∀_:Univ.Univ.
64 ∀meet2:∀_:Univ.∀_:Univ.Univ.
65 ∀H0:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (meet2 X (join Y (join X Z))) X.
66 ∀H1:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (join X (meet2 Y (meet2 X Z))) X.
67 ∀H2:∀X:Univ.∀Y:Univ.eq Univ (meet2 X Y) (meet2 Y X).
68 ∀H3:∀X:Univ.∀Y:Univ.eq Univ (join X (meet2 X Y)) X.
69 ∀H4:∀X:Univ.∀Y:Univ.eq Univ (meet2 X (join X Y)) X.
70 ∀H5:∀X:Univ.eq Univ (meet2 X X) X.
71 ∀H6:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (meet X (join Y (join X Z))) X.
72 ∀H7:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (join X (meet Y (meet X Z))) X.
73 ∀H8:∀X:Univ.∀Y:Univ.eq Univ (join X Y) (join Y X).
74 ∀H9:∀X:Univ.∀Y:Univ.eq Univ (meet X Y) (meet Y X).
75 ∀H10:∀X:Univ.∀Y:Univ.eq Univ (join X (meet X Y)) X.
76 ∀H11:∀X:Univ.∀Y:Univ.eq Univ (meet X (join X Y)) X.
77 ∀H12:∀X:Univ.eq Univ (join X X) X.
78 ∀H13:∀X:Univ.eq Univ (meet X X) X.eq Univ (meet a b) (meet2 a b)
79 .
80 #Univ.
81 #X.
82 #Y.
83 #Z.
84 #a.
85 #b.
86 #join.
87 #meet.
88 #meet2.
89 #H0.
90 #H1.
91 #H2.
92 #H3.
93 #H4.
94 #H5.
95 #H6.
96 #H7.
97 #H8.
98 #H9.
99 #H10.
100 #H11.
101 #H12.
102 #H13.
103 nauto by H0,H1,H2,H3,H4,H5,H6,H7,H8,H9,H10,H11,H12,H13;
104 nqed.
105
106 (* -------------------------------------------------------------------------- *)