Skip to content

Commit cd3aee1

Browse files
committed
Try to fix compiler/backend/passes/proofs
After HOL changes in HOL-Theorem-Prover/HOL@8c4bb7e
1 parent b560cb3 commit cd3aee1

6 files changed

+15
-7
lines changed

compiler/backend/passes/proofs/thunk_case_inlProofScript.sml

+1
Original file line numberDiff line numberDiff line change
@@ -703,6 +703,7 @@ Proof
703703
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
704704
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
705705
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
706+
\\ last_x_assum $ drule_all
706707
\\ Cases_on ‘eval_to k (EL n ys)’ \\ gs [])
707708
\\ rgs [Once (DECIDE “A ⇒ ¬B ⇔ B ⇒ ¬A”)]
708709
\\ IF_CASES_TAC \\ gs []

compiler/backend/passes/proofs/thunk_case_liftProofScript.sml

+1
Original file line numberDiff line numberDiff line change
@@ -487,6 +487,7 @@ Proof
487487
\\ first_x_assum (drule_then assume_tac) \\ gs []
488488
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
489489
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
490+
\\ last_x_assum $ drule_all
490491
\\ Cases_on ‘eval_to k (EL n ys)’ \\ gs [])
491492
\\ rgs [Once (DECIDE “A ⇒ ¬B ⇔ B ⇒ ¬A”)]
492493
\\ IF_CASES_TAC \\ gs []

compiler/backend/passes/proofs/thunk_case_unboxProofScript.sml

+1
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,7 @@ Proof
458458
\\ first_x_assum (drule_then assume_tac) \\ gs []
459459
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
460460
\\ first_x_assum (drule_all_then assume_tac) \\ gs []
461+
\\ last_x_assum $ drule_all
461462
\\ Cases_on ‘eval_to k (EL n ys)’ \\ gs [])
462463
\\ rgs [Once (DECIDE “A ⇒ ¬B ⇔ B ⇒ ¬A”)]
463464
\\ IF_CASES_TAC \\ gs []

compiler/backend/passes/proofs/thunk_tickProofScript.sml

+3-2
Original file line numberDiff line numberDiff line change
@@ -903,8 +903,9 @@ Proof
903903
\\ Cases_on ‘eval_to k (EL n xs)’
904904
\\ Cases_on ‘eval_to (j + k) (EL n ys)’ \\ gvs []
905905
\\ rename1 ‘err ≠ Type_error’ \\ Cases_on ‘err’ \\ gs [])
906-
\\ first_x_assum (drule_all_then assume_tac)
907-
\\ Cases_on ‘eval_to k (EL n xs)’ \\ gs [])
906+
\\ rpt $ first_x_assum (drule_all_then assume_tac)
907+
\\ Cases_on ‘eval_to k (EL n xs)’ \\ gs []
908+
)
908909
>- ((* IsEq *)
909910
IF_CASES_TAC \\ gvs [LENGTH_EQ_NUM_compute, DECIDE “∀n. n < 1 ⇔ n = 0”]
910911
\\ rename1 ‘exp_rel x y’

compiler/backend/passes/proofs/thunk_to_env_1ProofScript.sml

+5-1
Original file line numberDiff line numberDiff line change
@@ -443,14 +443,17 @@ Proof
443443
\\ rename1 ‘m < LENGTH ys’
444444
\\ first_x_assum (drule_all_then assume_tac)
445445
\\ first_x_assum (drule_all_then assume_tac)
446-
\\ Cases_on ‘eval_to k (EL m xs)’ \\ gs [])
446+
\\ last_x_assum $ drule_all
447+
\\ Cases_on ‘eval_to k (EL m xs)’ \\ gs []
448+
)
447449
\\ gs [DECIDE “A ⇒ ¬(B < C) ⇔ B < C ⇒ ¬A”]
448450
\\ IF_CASES_TAC \\ gs []
449451
>- (
450452
first_x_assum (drule_all_then assume_tac)
451453
\\ first_x_assum (drule_all_then assume_tac)
452454
\\ first_x_assum (drule_then assume_tac)
453455
\\ first_x_assum (drule_then assume_tac)
456+
\\ pop_assum drule
454457
\\ Cases_on ‘eval_to k (EL n xs)’ \\ gs [])
455458
\\ gs [DECIDE “A ⇒ ¬(B < C) ⇔ B < C ⇒ ¬A”]
456459
\\ IF_CASES_TAC \\ gs []
@@ -459,6 +462,7 @@ Proof
459462
\\ first_x_assum (drule_all_then assume_tac)
460463
\\ first_x_assum (drule_then assume_tac)
461464
\\ first_x_assum (drule_then assume_tac)
465+
\\ last_x_assum $ drule_all
462466
\\ Cases_on ‘eval_to k (EL n xs)’ \\ gs [])
463467
\\ gvs [DECIDE “A ⇒ ¬(B < C) ⇔ B < C ⇒ ¬A”, EVERY2_MAP, LIST_REL_EL_EQN]
464468
\\ rw []

compiler/backend/passes/proofs/thunk_untickProofScript.sml

+4-4
Original file line numberDiff line numberDiff line change
@@ -984,7 +984,7 @@ Proof
984984
\\ gs [result_map_def, CaseEq "bool", MEM_MAP]
985985
\\ gs [Once (DECIDE “A ⇒ ¬B ⇔ B ⇒ ¬A”)]
986986
\\ gvs [MEM_EL, PULL_EXISTS]
987-
\\ first_x_assum (drule_all_then assume_tac)
987+
\\ last_x_assum $ drule_then assume_tac
988988
\\ first_x_assum (drule_then drule)
989989
\\ disch_then (qx_choose_then ‘j’ assume_tac)
990990
\\ qexists_tac ‘j’
@@ -998,7 +998,7 @@ Proof
998998
\\ gvs [result_map_def, CaseEq "bool", MEM_MAP, Abbr ‘g’, MEM_EL]
999999
\\ rename1 ‘eval_to k (EL m ys) = INL Type_error’
10001000
\\ ntac 2 (pop_assum kall_tac)
1001-
\\ first_x_assum (drule_all_then assume_tac)
1001+
\\ last_x_assum $ drule_then assume_tac
10021002
\\ first_x_assum
10031003
(drule_then (drule_then (qx_choose_then ‘j’ assume_tac)))
10041004
\\ gs [Abbr ‘f’]
@@ -1197,13 +1197,13 @@ Proof
11971197
\\ rename1 ‘m < LENGTH ys’
11981198
\\ Cases_on ‘eval_to (k - 1) (EL m ys)’ \\ gvs []
11991199
>- (
1200-
first_x_assum (drule_all_then assume_tac)
1200+
last_x_assum $ drule_then assume_tac
12011201
\\ first_x_assum (drule_all_then (qx_choose_then ‘j’ assume_tac))
12021202
\\ gs [Abbr ‘f’]
12031203
\\ first_x_assum (drule_then assume_tac)
12041204
\\ Cases_on ‘eval_to (j + k - 1) (EL m xs)’ \\ gs [])
12051205
\\ fs [DECIDE “A ⇒ ¬B ⇔ B ⇒ ¬A”]
1206-
\\ first_x_assum (drule_all_then assume_tac)
1206+
\\ last_x_assum $ drule_then assume_tac
12071207
\\ first_x_assum (drule_all_then (qx_choose_then ‘j’ assume_tac))
12081208
\\ gs [Abbr ‘f’]
12091209
\\ first_x_assum (drule_then assume_tac)

0 commit comments

Comments
 (0)