]> matita.cs.unibo.it Git - helm.git/blob - matitaB/matita/contribs/ng_TPTP/COL035-1.ma
update in basic_2
[helm.git] / matitaB / matita / contribs / ng_TPTP / COL035-1.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: COL035-1.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : COL035-1 : TPTP v3.7.0. Released v1.0.0. *)
8
9 (*  Domain   : Combinatory Logic *)
10
11 (*  Problem  : Strong fixed point for W, Q, and L *)
12
13 (*  Version  : [WM88] (equality) axioms. *)
14
15 (*  English  : The strong fixed point property holds for the set  *)
16
17 (*             P consisting of the combinators W, Q, and L, where (Lx)y  *)
18
19 (*             = x(yy), (Wx)y = (xy)y, ((Qx)y)z = y(xz). *)
20
21 (*  Refs     : [Smu85] Smullyan (1978), To Mock a Mocking Bird and Other Logi *)
22
23 (*           : [MW87]  McCune & Wos (1987), A Case Study in Automated Theorem *)
24
25 (*           : [WM88]  Wos & McCune (1988), Challenge Problems Focusing on Eq *)
26
27 (*           : [MW88]  McCune & Wos (1988), Some Fixed Point Problems in Comb *)
28
29 (*  Source   : [MW88] *)
30
31 (*  Names    : - [MW88] *)
32
33 (*  Status   : Unsatisfiable *)
34
35 (*  Rating   : 0.11 v3.4.0, 0.12 v3.3.0, 0.21 v3.2.0, 0.14 v3.1.0, 0.22 v2.7.0, 0.09 v2.6.0, 0.17 v2.5.0, 0.00 v2.2.1, 0.11 v2.2.0, 0.00 v2.1.0, 0.25 v2.0.0 *)
36
37 (*  Syntax   : Number of clauses     :    4 (   0 non-Horn;   4 unit;   1 RR) *)
38
39 (*             Number of atoms       :    4 (   4 equality) *)
40
41 (*             Maximal clause size   :    1 (   1 average) *)
42
43 (*             Number of predicates  :    1 (   0 propositional; 2-2 arity) *)
44
45 (*             Number of functors    :    5 (   3 constant; 0-2 arity) *)
46
47 (*             Number of variables   :    8 (   0 singleton) *)
48
49 (*             Maximal term depth    :    4 (   3 average) *)
50
51 (*  Comments :  *)
52
53 (* -------------------------------------------------------------------------- *)
54 ntheorem prove_fixed_point:
55  (∀Univ:Type.∀X:Univ.∀Y:Univ.∀Z:Univ.
56 ∀apply:∀_:Univ.∀_:Univ.Univ.
57 ∀f:∀_:Univ.Univ.
58 ∀l:Univ.
59 ∀q:Univ.
60 ∀w:Univ.
61 ∀H0:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (apply (apply (apply q X) Y) Z) (apply Y (apply X Z)).
62 ∀H1:∀X:Univ.∀Y:Univ.eq Univ (apply (apply w X) Y) (apply (apply X Y) Y).
63 ∀H2:∀X:Univ.∀Y:Univ.eq Univ (apply (apply l X) Y) (apply X (apply Y Y)).∃Y:Univ.eq Univ (apply Y (f Y)) (apply (f Y) (apply Y (f Y))))
64 .
65 #Univ ##.
66 #X ##.
67 #Y ##.
68 #Z ##.
69 #apply ##.
70 #f ##.
71 #l ##.
72 #q ##.
73 #w ##.
74 #H0 ##.
75 #H1 ##.
76 #H2 ##.
77 napply (ex_intro ? ? ? ?) ##[
78 ##2:
79 nauto by H0,H1,H2 ##;
80 ##| ##skip ##]
81 ntry (nassumption) ##;
82 nqed.
83
84 (* -------------------------------------------------------------------------- *)