Add the statement that the logrel respects beta eta laws

This commit is contained in:
Yiyun Liu 2024-12-27 02:09:34 -05:00
parent 8e0f9a1e0a
commit 368c83dd8e

View file

@ -2,7 +2,7 @@ Require Import Autosubst2.core Autosubst2.fintype Autosubst2.syntax.
Require Import fp_red. Require Import fp_red.
From Hammer Require Import Tactics. From Hammer Require Import Tactics.
From Equations Require Import Equations. From Equations Require Import Equations.
Require Import ssreflect. Require Import ssreflect ssrbool.
Require Import Logic.PropExtensionality (propositional_extensionality). Require Import Logic.PropExtensionality (propositional_extensionality).
From stdpp Require Import relations (rtc(..)). From stdpp Require Import relations (rtc(..)).
Definition ProdSpace {n} (PA : Tm n -> Prop) Definition ProdSpace {n} (PA : Tm n -> Prop)
@ -178,3 +178,51 @@ Lemma InterpUnivN_back_preservation_star n i (A : Tm n) B P (h : ⟦ B ⟧ i ↘
rtc RPar.R A B -> rtc RPar.R A B ->
A i P. A i P.
Proof. hauto l:on rew:db:InterpUnivN use:InterpExt_back_preservation_star. Qed. Proof. hauto l:on rew:db:InterpUnivN use:InterpExt_back_preservation_star. Qed.
Definition ty_hf {n} (a : Tm n) :=
match a with
| Pi _ _ => true
| Univ _ => true
| _ => false
end.
Lemma InterpExtInv n i I (A : Tm n) PA :
A i ;; I PA ->
exists B, ty_hf B /\ rtc RPar.R A B /\ B i ;; I PA.
Proof.
move => h. elim : A PA /h.
- move => A B PA PF hPA _ hPF hPF0 _.
exists (Pi A B). repeat split => //=.
apply rtc_refl.
hauto l:on ctrs:InterpExt.
- move => j ?. exists (Univ j).
hauto l:on ctrs:InterpExt.
- hauto lq:on ctrs:rtc.
Qed.
Lemma InterpExt_Join n i I (A B : Tm n) PA PB :
A i ;; I PA ->
B i ;; I PB ->
join A B ->
PA = PB.
Proof.
move => h. move : B PB. elim : A PA /h.
- move => A B PA PF hPA ihPA hTot hRes ihPF U PU /InterpExtInv.
move => [B0 []].
case : B0 => //=.
+ move => A0 B0 _ [hr hPi].
move /InterpExt_Fun_inv : hPi.
move => [PA0][PF0][hPA0][hTot0][hRes0]?. subst.
move => hjoin.
have ? : join A A0 by admit.
have ? : join B B0 by admit.
have ? : PA0 = PA by hauto l:on. subst.
rewrite /ProdSpace.
extensionality b.
apply propositional_extensionality.
admit.
(* Contradiction *)
+ admit.
- admit.
- admit.
Admitted.