-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCompleteness.v
85 lines (75 loc) · 1.64 KB
/
Completeness.v
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
Require Import Modal_Library Deductive_System List Classical.
Definition Consistency (A: axiom -> Prop) (Γ : theory) : Prop :=
forall φ,
~ (A; Γ |-- φ ./\ .~φ).
Definition Maximal_Consistency (A: axiom -> Prop) (Γ : theory) : Prop :=
forall φ,
~(In φ Γ /\ In .~ φ Γ) /\
Consistency A Γ.
Lemma lema_1 :
forall A Δ Γ,
(Consistency A Δ /\
subset Γ Δ) ->
Consistency A Γ.
Proof.
intros.
destruct H.
unfold Consistency, not in *; intros.
eapply H;
eapply derive_weak.
exact H0.
exact H1.
Qed.
Section Lindebaum.
Variable P: nat -> modalFormula.
Variable Γ: theory.
Variable A: axiom -> Prop.
Inductive Lindenbaum_set : nat -> theory -> Prop :=
| Lindenbaum_zero:
Lindenbaum_set 0 Γ
| Lindenbaum_succ1:
forall n Δ,
Lindenbaum_set n Δ ->
Consistency A (P n :: Δ) ->
Lindenbaum_set (S n) (P n :: Δ)
| Lindenbaum_succ2:
forall n Δ,
Lindenbaum_set n Δ ->
~Consistency A (P n :: Δ) ->
Lindenbaum_set (S n) Δ.
Lemma construct_set:
forall n,
exists Δ,
Lindenbaum_set n Δ.
Proof.
intros; induction n.
- exists Γ.
constructor.
- destruct IHn as (Δ, ?H).
edestruct classic with (Consistency A (P n :: Δ)).
+ eexists.
apply Lindenbaum_succ1; eauto.
+ eexists.
apply Lindenbaum_succ2; eauto.
Qed.
Lemma Lindenbaum_subset:
forall n Δ,
Lindenbaum_set n Δ ->
subset Γ Δ.
Proof.
unfold subset; intros.
induction H.
- assumption.
- intuition.
- assumption.
Qed.
End Lindebaum.
Lemma Lindenbaum:
forall A Γ,
Consistency A Γ ->
exists Δ,
(Maximal_Consistency A Δ /\
subset Γ Δ).
Proof.
admit.
Admitted.