]> matita.cs.unibo.it Git - helm.git/blob - matita/matita/contribs/TPTP/HEQ/COL006-3.ma
commit of the "substitution" component and of some auxiliary files ...
[helm.git] / matita / matita / contribs / TPTP / HEQ / COL006-3.ma
1 set "baseuri" "cic:/matita/TPTP/COL006-3".
2 include "logic/equality.ma".
3
4 (* Inclusion of: COL006-3.p *)
5
6 (* -------------------------------------------------------------------------- *)
7
8 (*  File     : COL006-3 : TPTP v3.2.0. Released v1.0.0. *)
9
10 (*  Domain   : Combinatory Logic *)
11
12 (*  Problem  : Strong fixed point for S and K *)
13
14 (*  Version  : [WM88] (equality) axioms : Augmented > Especial. *)
15
16 (*             Theorem formulation : The fixed point is provided and checked. *)
17
18 (*  English  : The strong fixed point property holds for the set  *)
19
20 (*             P consisting of the combinators S and K alone, where *)
21
22 (*             ((Sx)y)z = (xz)(yz), (Kx)y = x. *)
23
24 (*  Refs     : [WM88]  Wos & McCune (1988), Challenge Problems Focusing on Eq *)
25
26 (*  Source   : [TPTP] *)
27
28 (*  Names    :  *)
29
30 (*  Status   : Unsatisfiable *)
31
32 (*  Rating   : 0.57 v3.1.0, 0.89 v2.7.0, 0.67 v2.6.0, 0.71 v2.5.0, 0.80 v2.4.0, 0.83 v2.2.1, 0.89 v2.2.0, 0.86 v2.1.0, 1.00 v2.0.0 *)
33
34 (*  Syntax   : Number of clauses     :    4 (   0 non-Horn;   3 unit;   2 RR) *)
35
36 (*             Number of atoms       :    5 (   3 equality) *)
37
38 (*             Maximal clause size   :    2 (   1 average) *)
39
40 (*             Number of predicates  :    2 (   0 propositional; 1-2 arity) *)
41
42 (*             Number of functors    :    4 (   3 constant; 0-2 arity) *)
43
44 (*             Number of variables   :    6 (   1 singleton) *)
45
46 (*             Maximal term depth    :    8 (   3 average) *)
47
48 (*  Comments :  *)
49
50 (* -------------------------------------------------------------------------- *)
51 theorem prove_strong_fixed_point:
52  ∀Univ:Set.∀Strong_fixed_point:Univ.∀X:Univ.∀Y:Univ.∀Z:Univ.∀apply:∀_:Univ.∀_:Univ.Univ.∀fixed_point:∀_:Univ.Prop.∀fixed_pt:Univ.∀k:Univ.∀s:Univ.∀H0:∀Strong_fixed_point:Univ.∀_:eq Univ (apply Strong_fixed_point fixed_pt) (apply fixed_pt (apply Strong_fixed_point fixed_pt)).fixed_point Strong_fixed_point.∀H1:∀X:Univ.∀Y:Univ.eq Univ (apply (apply k X) Y) X.∀H2:∀X:Univ.∀Y:Univ.∀Z:Univ.eq Univ (apply (apply (apply s X) Y) Z) (apply (apply X Z) (apply Y Z)).fixed_point (apply (apply s (apply k (apply (apply s (apply (apply s k) k)) (apply (apply s k) k)))) (apply (apply s (apply (apply s (apply k s)) k)) (apply k (apply (apply s (apply (apply s k) k)) (apply (apply s k) k)))))
53 .
54 intros.
55 autobatch depth=5 width=5 size=20 timeout=10;
56 try assumption.
57 print proofterm.
58 qed.
59
60 (* -------------------------------------------------------------------------- *)