Nivel 7 · Completitud en Lean (experto)
Corrección y consistencia
La corrección es la mitad fácil de la adecuación: toda fórmula
derivable es semánticamente válida. Su demostración es la inducción sobre reglas por excelencia, y
conviene subrayar desde el principio en qué nivel vive: es un teorema meta acerca del cálculo
objeto (Nota 11.1),
demostrado con los conectivos y las tácticas de Lean, no con las reglas de ND.
Matemática
Se escribe por « se cumple para toda ».
Si se cumple y , entonces .
A probar: , es decir, para toda , bajo las hipótesis y . Sea . Hay dos casos:
- : entonces se cumple por la primera hipótesis.
- : entonces se cumple porque (segunda hipótesis).
En ambos casos , luego .
Si , entonces para toda valuación con se cumple .
A probar: para toda valuación con se cumple .
Por inducción sobre la derivación de . Se fija con y se analiza la última regla aplicada; «HI» abrevia la hipótesis de inducción sobre la(s) subderivación(es). Toda la demostración transcurre a nivel meta: cada caso convierte una regla del cálculo objeto en el paso lógico correspondiente de Lean. Se muestran completos cuatro casos representativos, incluidos los dos delicados (I y RAA); los tres restantes son análogos y están escritos en su totalidad en la tesis: E es el modus ponens a nivel meta aplicado a las dos HI, E combina las dos HI en , y E obtiene de su HI y de ahí cualquier meta.
- hipótesis (). Meta: . Como y , se cumple por definición de .
- I (premisa ). Meta: , que por definición es . Se supone ; por el Lema 11.11, , y la HI sobre la premisa da .
- I (premisa ). Meta: . Se supone ; entonces (Lema 11.11) y la HI da , que es (Lema 11.7). La suposición es insostenible, luego .
- RAA (premisa ). Meta: . Supóngase, por contradicción, ; entonces se cumple, así que , y la HI da : contradicción. Luego . (Único caso que apela al principio clásico a nivel meta.)
Si entonces .
A probar: , es decir, para toda . Se aplica el Teorema 11.12 con : para cualquier , la hipótesis se cumple de forma vacua (no hay fórmulas en ), de modo que el teorema entrega . Como es arbitraria, .
no es derivable a partir del contexto vacío: .
A probar: . Supóngase, por contradicción, que . Por el Corolario 11.13, sería una tautología, es decir, para toda . Pero por el Lema 11.7, para toda : contradicción. Por tanto .
Código de Lean (tal como se implementa)
Extracto de NaturalDeduction.lean.
theorem sat_insert {v : Valuation} {Γ : Set Formula} {χ : Formula} (hχ : eval v χ) (hΓ : ∀ ψ ∈ Γ, eval v ψ) : ∀ ψ ∈ insert χ Γ, eval v ψ := by intro ψ hψ rcases Set.mem_insert_iff.1 hψ with h | h · subst h; exact hχ · exact hΓ ψ h
theorem soundness {Γ φ} (d : ND Γ φ) : ∀ v, (∀ ψ ∈ Γ, eval v ψ) → eval v φ := by induction d with | hyp hmem => intro v hv; exact hv _ hmem | impI _ ih => intro v hv hp; exact ih v (sat_insert hp hv) | impE _ _ ih1 ih2 => intro v hv; exact (ih1 v hv) (ih2 v hv) | negI _ ih => intro v hv hp; exact (eval_Bot v).1 (ih v (sat_insert hp hv)) | negE _ _ ih1 ih2 => intro v hv; exact (eval_Bot v).2 ((ih1 v hv) (ih2 v hv)) | botE _ ih => intro v hv; exact ((eval_Bot v).1 (ih v hv)).elim | classical _ ih => intro v hv by_contra hnp exact (eval_Bot v).1 (ih v (sat_insert hnp hv))
theorem isTautology_of_provable {φ} (d : ND (∅ : Set Formula) φ) : IsTautology φ := by intro v; refine soundness d v ?_; intro ψ hψ; simp at hψ
theorem not_provable_Bot : ¬ ND (∅ : Set Formula) Bot := by intro d exact (eval_Bot (fun _ => True)).1 (isTautology_of_provable d (fun _ => True))Las siete ramas de soundness son los siete casos anteriores; (eval_Bot v).1 y .2 son las dos
direcciones del Lema 11.7;
el by_contra de la rama classical es el único paso clásico.
Vista interna (CIC). De nuevo induction d es ND.rec, ahora con el motivo valuado en
La corrección y la completitud eliminan el mismo inductivo ND hacia dos motivos
distintos: la validez semántica aquí y, dentro de Kalmár, la derivabilidad desde
contextos de literales allá. Ambas eliminaciones son legítimas porque los blancos son
proposiciones. El paso by_contra es donde el nivel meta usa Classical.choice/propext, razón
por la cual soundness aparece en la auditoría de
axiomas con esas constantes.