]> matita.cs.unibo.it Git - helm.git/blob - matitaB/matita/contribs/ng_TPTP/COL058-1.ma
New management of justifications.
[helm.git] / matitaB / matita / contribs / ng_TPTP / COL058-1.ma
1 include "logic/equality.ma".
2
3 (* Inclusion of: COL058-1.p *)
4
5 (* -------------------------------------------------------------------------- *)
6
7 (*  File     : COL058-1 : TPTP v3.7.0. Released v1.0.0. *)
8
9 (*  Domain   : Combinatory Logic *)
10
11 (*  Problem  : If there's a lark, then there's an egocentric bird. *)
12
13 (*  Version  : Especial. *)
14
15 (*  English  : Suppose we are given a forest that conrtains a lark, and  *)
16
17 (*             we are not given any other information. Prove that at least  *)
18
19 (*             one bird in the forest must be egocentric. *)
20
21 (*  Refs     : [Smu85] Smullyan (1978), To Mock a Mocking Bird and Other Logi *)
22
23 (*           : [GO86]  Glickfield & Overbeek (1986), A Foray into Combinatory *)
24
25 (*  Source   : [GO86] *)
26
27 (*  Names    : - [GO86] *)
28
29 (*  Status   : Unsatisfiable *)
30
31 (*  Rating   : 0.00 v2.0.0 *)
32
33 (*  Syntax   : Number of clauses     :    2 (   0 non-Horn;   2 unit;   1 RR) *)
34
35 (*             Number of atoms       :    2 (   2 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    :    2 (   1 constant; 0-2 arity) *)
42
43 (*             Number of variables   :    3 (   0 singleton) *)
44
45 (*             Maximal term depth    :    3 (   2 average) *)
46
47 (*  Comments :  *)
48
49 (* -------------------------------------------------------------------------- *)
50
51 (* ---- There exists a lark  *)
52
53 (* ---- Hypothesis: There exists a bird x that is fond of itself.  *)
54 ntheorem prove_the_bird_exists:
55  (∀Univ:Type.∀X:Univ.∀X1:Univ.∀X2:Univ.
56 ∀lark:Univ.
57 ∀response:∀_:Univ.∀_:Univ.Univ.
58 ∀H0:∀X1:Univ.∀X2:Univ.eq Univ (response (response lark X1) X2) (response X1 (response X2 X2)).∃X:Univ.eq Univ (response X X) X)
59 .
60 #Univ ##.
61 #X ##.
62 #X1 ##.
63 #X2 ##.
64 #lark ##.
65 #response ##.
66 #H0 ##.
67 napply (ex_intro ? ? ? ?) ##[
68 ##2:
69 nauto by H0 ##;
70 ##| ##skip ##]
71 ntry (nassumption) ##;
72 nqed.
73
74 (* -------------------------------------------------------------------------- *)