]> matita.cs.unibo.it Git - helm.git/blob - matitaB/matita/contribs/ng_TPTP/COL043-3.ma
New management of justifications.
[helm.git] / matitaB / matita / contribs / ng_TPTP / COL043-3.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: COL043-3.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : COL043-3 : TPTP v3.7.0. Bugfixed v2.3.0. *)
8
9 (*  Domain   : Combinatory Logic *)
10
11 (*  Problem  : Strong fixed point for B and H *)
12
13 (*  Version  : [WM88] (equality) axioms. *)
14
15 (*             Theorem formulation : The fixed point is provided and checked. *)
16
17 (*  English  : The strong fixed point property holds for the set  *)
18
19 (*             P consisting of the combinators B and H, where ((Bx)y)z  *)
20
21 (*             = x(yz), ((Hx)y)z = ((xy)z)y. *)
22
23 (*  Refs     : [WM88]  Wos & McCune (1988), Challenge Problems Focusing on Eq *)
24
25 (*           : [Wos93] Wos (1993), The Kernel Strategy and Its Use for the St *)
26
27 (*  Source   : [TPTP] *)
28
29 (*  Names    : - [Wos93] *)
30
31 (*  Status   : Unsatisfiable *)
32
33 (*  Rating   : 0.67 v3.4.0, 0.75 v3.3.0, 0.79 v3.2.0, 0.71 v3.1.0, 0.78 v2.7.0, 1.00 v2.6.0, 0.83 v2.5.0, 0.75 v2.4.0, 0.67 v2.3.0 *)
34
35 (*  Syntax   : Number of clauses     :    4 (   0 non-Horn;   4 unit;   2 RR) *)
36
37 (*             Number of atoms       :    4 (   4 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 (   4 constant; 0-2 arity) *)
44
45 (*             Number of variables   :    6 (   0 singleton) *)
46
47 (*             Maximal term depth    :   11 (   4 average) *)
48
49 (*  Comments :  *)
50
51 (*  Bugfixes : v2.3.0 - Clause strong_fixed_point fixed. *)
52
53 (* -------------------------------------------------------------------------- *)
54 ntheorem prove_strong_fixed_point:
55  (∀Univ:Type.∀X:Univ.∀Y:Univ.∀Z:Univ.
56 ∀apply:∀_:Univ.∀_:Univ.Univ.
57 ∀b:Univ.
58 ∀fixed_pt:Univ.
59 ∀h:Univ.
60 ∀strong_fixed_point:Univ.
61 ∀H0:eq Univ strong_fixed_point (apply (apply b (apply (apply b (apply (apply h (apply (apply b (apply (apply b h) (apply b b))) (apply h (apply (apply b h) (apply b b))))) h)) b)) b).
62 ∀H1:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (apply (apply (apply h X) Y) Z) (apply (apply (apply X Y) Z) Y).
63 ∀H2:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (apply (apply (apply b X) Y) Z) (apply X (apply Y Z)).eq Univ (apply strong_fixed_point fixed_pt) (apply fixed_pt (apply strong_fixed_point fixed_pt)))
64 .
65 #Univ ##.
66 #X ##.
67 #Y ##.
68 #Z ##.
69 #apply ##.
70 #b ##.
71 #fixed_pt ##.
72 #h ##.
73 #strong_fixed_point ##.
74 #H0 ##.
75 #H1 ##.
76 #H2 ##.
77 nauto by H0,H1,H2 ##;
78 ntry (nassumption) ##;
79 nqed.
80
81 (* -------------------------------------------------------------------------- *)