]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/contribs/ng_TPTP/COL066-1.ma
-ng implemented
[helm.git] / helm / software / matita / contribs / ng_TPTP / COL066-1.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: COL066-1.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : COL066-1 : TPTP v3.2.0. Released v1.0.0. *)
8
9 (*  Domain   : Combinatory Logic *)
10
11 (*  Problem  : Find combinator equivalent to P from B, Q and W *)
12
13 (*  Version  : [WM88] (equality) axioms. *)
14
15 (*  English  : Construct from B, Q and W alone a combinator that behaves as  *)
16
17 (*             the combinator P does, where ((Bx)y)z = x(yz), ((Qx)y)z =  *)
18
19 (*             y(xz), (Wx)y = (xy)y, (((Px)y)y)z = (xy)((xy)z) *)
20
21 (*  Refs     : [WM88]  Wos & McCune (1988), Challenge Problems Focusing on Eq *)
22
23 (*           : [WW+90] Wos et al. (1990), Automated Reasoning Contributes to  *)
24
25 (*  Source   : [WW+90] *)
26
27 (*  Names    : CL-7 [WW+90] *)
28
29 (*  Status   : Unsatisfiable *)
30
31 (*  Rating   : 0.93 v3.1.0, 0.89 v2.7.0, 0.82 v2.6.0, 0.67 v2.5.0, 0.25 v2.4.0, 0.00 v2.3.0, 0.33 v2.2.1, 0.89 v2.2.0, 0.86 v2.1.0, 1.00 v2.0.0 *)
32
33 (*  Syntax   : Number of clauses     :    4 (   0 non-Horn;   4 unit;   1 RR) *)
34
35 (*             Number of atoms       :    4 (   4 equality) *)
36
37 (*             Maximal clause size   :    1 (   1 average) *)
38
39 (*             Number of predicates  :    1 (   0 propositional; 2-2 arity) *)
40
41 (*             Number of functors    :    7 (   3 constant; 0-2 arity) *)
42
43 (*             Number of variables   :    9 (   0 singleton) *)
44
45 (*             Maximal term depth    :    6 (   4 average) *)
46
47 (*  Comments :  *)
48
49 (* -------------------------------------------------------------------------- *)
50 ntheorem prove_p_combinator:
51  ∀Univ:Type.∀X:Univ.∀Y:Univ.∀Z:Univ.
52 ∀apply:∀_:Univ.∀_:Univ.Univ.
53 ∀b:Univ.
54 ∀f:∀_:Univ.Univ.
55 ∀g:∀_:Univ.Univ.
56 ∀h:∀_:Univ.Univ.
57 ∀q:Univ.
58 ∀w:Univ.
59 ∀H0:∀X:Univ.∀Y:Univ.eq Univ (apply (apply w X) Y) (apply (apply X Y) Y).
60 ∀H1:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (apply (apply (apply q X) Y) Z) (apply Y (apply X Z)).
61 ∀H2:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (apply (apply (apply b X) Y) Z) (apply X (apply Y Z)).∃X:Univ.eq Univ (apply (apply (apply (apply X (f X)) (g X)) (g X)) (h X)) (apply (apply (f X) (g X)) (apply (apply (f X) (g X)) (h X)))
62 .
63 #Univ.
64 #X.
65 #Y.
66 #Z.
67 #apply.
68 #b.
69 #f.
70 #g.
71 #h.
72 #q.
73 #w.
74 #H0.
75 #H1.
76 #H2.
77 napply ex_intro[
78 nid2:
79 nauto by H0,H1,H2;
80 nid|
81 skip]
82 nqed.
83
84 (* -------------------------------------------------------------------------- *)