File tree Expand file tree Collapse file tree 1 file changed +11
-8
lines changed Expand file tree Collapse file tree 1 file changed +11
-8
lines changed Original file line number Diff line number Diff line change @@ -301,18 +301,21 @@ lemma let_binding_identity
301
301
unfold Env.lookupTy
302
302
simp_all
303
303
304
- lemma field_refintype_implies_exists_field_value (σ: Env.ValEnv) (Δ: Env.CircuitEnv) (Γ: Env.TyEnv) (x: String) (e: Predicate)
305
- : (Env.lookupTy Γ x = Ty.field.refin e) → PropSemantics.tyenvToProp σ Δ Γ → ∃ (a: F), Env.lookupVal σ x = Ast.Value.vF a := by
306
- intro hx hy
307
- have hv := Ty.tyenvToProp_implies_varToProp σ Δ Γ x Ast.Ty.field e hx hy
308
- unfold PropSemantics.varToProp at hv
304
+ lemma field_refintype_implies_exists_field_value' (σ: Env.ValEnv) (Δ: Env.CircuitEnv) (Γ: Env.TyEnv) (x: String) (e: Predicate)
305
+ : (Env.lookupTy Γ x = Ty.field.refin e) → PropSemantics.varToProp σ Δ Γ x → ∃ (a: F), Env.lookupVal σ x = Ast.Value.vF a := by
306
+ intro hx
307
+ unfold PropSemantics.varToProp
309
308
simp_all
310
309
set val := Env.lookupVal σ x
311
310
cases val with
312
311
| vF n => simp_all
313
- | _ => {
314
- sorry
315
- }
312
+ | _ => intro hσ; simp_all
313
+
314
+ lemma field_refintype_implies_exists_field_value (σ: Env.ValEnv) (Δ: Env.CircuitEnv) (Γ: Env.TyEnv) (x: String) (e: Predicate)
315
+ : (Env.lookupTy Γ x = Ty.field.refin e) → PropSemantics.tyenvToProp σ Δ Γ → ∃ (a: F), Env.lookupVal σ x = Ast.Value.vF a := by
316
+ intro hx hy
317
+ have hv := Ty.tyenvToProp_implies_varToProp σ Δ Γ x Ast.Ty.field e hx hy
318
+ exact field_refintype_implies_exists_field_value' σ Δ Γ x e hx hv
316
319
317
320
lemma eval_eq_vals (v₁ v₂: Ast.Value)
318
321
: Eval.evalRelOp RelOp.eq v₁ v₂ = some true → v₁ = v₂ := by
You can’t perform that action at this time.
0 commit comments