]> matita.cs.unibo.it Git - helm.git/blob - matitaB/matita/contribs/ng_TPTP/RNG025-8.ma
New management of justifications.
[helm.git] / matitaB / matita / contribs / ng_TPTP / RNG025-8.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: RNG025-8.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : RNG025-8 : TPTP v3.7.0. Released v1.0.0. *)
8
9 (*  Domain   : Ring Theory (Alternative) *)
10
11 (*  Problem  : Middle or Flexible Law *)
12
13 (*  Version  : [Ste87] (equality) axioms : Reduced & Augmented > Complete. *)
14
15 (*             Theorem formulation : Linearized. *)
16
17 (*  English  :  *)
18
19 (*  Refs     : [Ste87] Stevens (1987), Some Experiments in Nonassociative Rin *)
20
21 (*  Source   : [TPTP] *)
22
23 (*  Names    :  *)
24
25 (*  Status   : Satisfiable *)
26
27 (*  Rating   : 0.33 v3.2.0, 0.67 v3.1.0, 0.33 v2.4.0, 0.67 v2.2.1, 0.75 v2.2.0, 0.67 v2.1.0, 1.00 v2.0.0 *)
28
29 (*  Syntax   : Number of clauses     :   18 (   0 non-Horn;  18 unit;   1 RR) *)
30
31 (*             Number of atoms       :   18 (  18 equality) *)
32
33 (*             Maximal clause size   :    1 (   1 average) *)
34
35 (*             Number of predicates  :    1 (   0 propositional; 2-2 arity) *)
36
37 (*             Number of functors    :    9 (   4 constant; 0-3 arity) *)
38
39 (*             Number of variables   :   36 (   2 singleton) *)
40
41 (*             Maximal term depth    :    4 (   2 average) *)
42
43 (*  Comments :  *)
44
45 (* -------------------------------------------------------------------------- *)
46
47 (* ----Don't Include nonassociative ring axioms. *)
48
49 (* ----The associator has to be replaced by its linearised form.  *)
50
51 (*  include('axioms/RNG003-0.ax'). *)
52
53 (* -------------------------------------------------------------------------- *)
54
55 (* ----Commutativity for addition  *)
56
57 (* ----Associativity for addition  *)
58
59 (* ----There exists an additive identity element  *)
60
61 (* ----Multiplicative zero  *)
62
63 (* ----Existence of left additive additive_inverse  *)
64
65 (* ----Distributive property of product over sum  *)
66
67 (* ----Inverse of additive_inverse of X is X  *)
68
69 (* ----Right alternative law  *)
70
71 (* ----Left alternative law  *)
72
73 (* ----Associator  *)
74
75 (*  input_clause(associator,axiom, *)
76
77 (*      [++equal(associator(X,Y,Z),add(multiply(multiply(X,Y),Z), *)
78
79 (*  additive_inverse(multiply(X,multiply(Y,Z)))))]). *)
80
81 (* ----Linearised for of the associator  *)
82
83 (* ----Commutator  *)
84 ntheorem prove_flexible_law:
85  (∀Univ:Type.∀U:Univ.∀V:Univ.∀X:Univ.∀Y:Univ.∀Z:Univ.
86 ∀a:Univ.
87 ∀add:∀_:Univ.∀_:Univ.Univ.
88 ∀additive_identity:Univ.
89 ∀additive_inverse:∀_:Univ.Univ.
90 ∀associator:∀_:Univ.∀_:Univ.∀_:Univ.Univ.
91 ∀b:Univ.
92 ∀c:Univ.
93 ∀commutator:∀_:Univ.∀_:Univ.Univ.
94 ∀multiply:∀_:Univ.∀_:Univ.Univ.
95 ∀H0:∀X:Univ.∀Y:Univ.eq Univ (commutator X Y) (add (multiply Y X) (additive_inverse (multiply X Y))).
96 ∀H1:∀U:Univ.∀V:Univ.∀X:Univ.∀Y:Univ.eq Univ (associator (add U V) X Y) (add (associator U X Y) (associator V X Y)).
97 ∀H2:∀U:Univ.∀V:Univ.∀X:Univ.∀Y:Univ.eq Univ (associator X (add U V) Y) (add (associator X U Y) (associator X V Y)).
98 ∀H3:∀U:Univ.∀V:Univ.∀X:Univ.∀Y:Univ.eq Univ (associator X Y (add U V)) (add (associator X Y U) (associator X Y V)).
99 ∀H4:∀X:Univ.∀Y:Univ.eq Univ (multiply (multiply X X) Y) (multiply X (multiply X Y)).
100 ∀H5:∀X:Univ.∀Y:Univ.eq Univ (multiply (multiply X Y) Y) (multiply X (multiply Y Y)).
101 ∀H6:∀X:Univ.eq Univ (additive_inverse (additive_inverse X)) X.
102 ∀H7:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (multiply (add X Y) Z) (add (multiply X Z) (multiply Y Z)).
103 ∀H8:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (multiply X (add Y Z)) (add (multiply X Y) (multiply X Z)).
104 ∀H9:∀X:Univ.eq Univ (add X (additive_inverse X)) additive_identity.
105 ∀H10:∀X:Univ.eq Univ (add (additive_inverse X) X) additive_identity.
106 ∀H11:∀X:Univ.eq Univ (multiply X additive_identity) additive_identity.
107 ∀H12:∀X:Univ.eq Univ (multiply additive_identity X) additive_identity.
108 ∀H13:∀X:Univ.eq Univ (add X additive_identity) X.
109 ∀H14:∀X:Univ.eq Univ (add additive_identity X) X.
110 ∀H15:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (add X (add Y Z)) (add (add X Y) Z).
111 ∀H16:∀X:Univ.∀Y:Univ.eq Univ (add X Y) (add Y X).eq Univ (add (associator a b c) (associator a c b)) additive_identity)
112 .
113 #Univ ##.
114 #U ##.
115 #V ##.
116 #X ##.
117 #Y ##.
118 #Z ##.
119 #a ##.
120 #add ##.
121 #additive_identity ##.
122 #additive_inverse ##.
123 #associator ##.
124 #b ##.
125 #c ##.
126 #commutator ##.
127 #multiply ##.
128 #H0 ##.
129 #H1 ##.
130 #H2 ##.
131 #H3 ##.
132 #H4 ##.
133 #H5 ##.
134 #H6 ##.
135 #H7 ##.
136 #H8 ##.
137 #H9 ##.
138 #H10 ##.
139 #H11 ##.
140 #H12 ##.
141 #H13 ##.
142 #H14 ##.
143 #H15 ##.
144 #H16 ##.
145 nauto by H0,H1,H2,H3,H4,H5,H6,H7,H8,H9,H10,H11,H12,H13,H14,H15,H16 ##;
146 ntry (nassumption) ##;
147 nqed.
148
149 (* -------------------------------------------------------------------------- *)