aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2021-05-16 11:35:31 +0100
committerYann Herklotz <git@yannherklotz.com>2021-05-16 11:35:31 +0100
commit51d25ab7feeaca959d35fbd4fa905f8ce003e07b (patch)
tree7005c02d88e7bcfcdf8403b8b83ee05de322b762
parentbecbab413e16e40069329d8e7f21dc92e2e4c4e4 (diff)
downloadvericert-kvx-51d25ab7feeaca959d35fbd4fa905f8ce003e07b.tar.gz
vericert-kvx-51d25ab7feeaca959d35fbd4fa905f8ce003e07b.zip
Minimise the proof a bit
-rw-r--r--src/hls/RTLPargenproof.v30
1 files changed, 12 insertions, 18 deletions
diff --git a/src/hls/RTLPargenproof.v b/src/hls/RTLPargenproof.v
index 8ecaba2..9cfee3a 100644
--- a/src/hls/RTLPargenproof.v
+++ b/src/hls/RTLPargenproof.v
@@ -284,25 +284,19 @@ Proof. induction 2; try rewrite H; eauto with barg. Qed.
match_states s r ->
exists r', step_cf_instr tge r cfi t r' /\ match_states s' r'.
Proof using TRANSL.
- induction 1; repeat semantics_simpl.
- { repeat (try erewrite match_states_list by eauto; econstructor; eauto with rtlgp). }
- { repeat (try erewrite match_states_list by eauto; econstructor; eauto with rtlgp). }
- { (try erewrite match_states_list by eauto; econstructor; eauto with rtlgp).
- (try erewrite match_states_list by eauto; econstructor; eauto with rtlgp).
- (try erewrite match_states_list by eauto; econstructor; eauto with rtlgp).
- eapply eval_builtin_args_eq. eapply REG.
- eapply Events.eval_builtin_args_preserved. eapply symbols_preserved.
- eauto.
- (econstructor; eauto with rtlgp).
- intros.
- unfold regmap_setres. destruct res.
- destruct (Pos.eq_dec x0 x); subst.
- repeat rewrite Regmap.gss; auto.
- repeat rewrite Regmap.gso; auto.
- eapply REG. eapply REG.
+ induction 1; repeat semantics_simpl;
+ try solve [repeat (try erewrite match_states_list; eauto; econstructor; eauto with rtlgp)].
+ { do 3 (try erewrite match_states_list by eauto; econstructor; eauto with rtlgp).
+ eapply eval_builtin_args_eq. eapply REG.
+ eapply Events.eval_builtin_args_preserved. eapply symbols_preserved.
+ eauto.
+ intros.
+ unfold regmap_setres. destruct res.
+ destruct (Pos.eq_dec x0 x); subst.
+ repeat rewrite Regmap.gss; auto.
+ repeat rewrite Regmap.gso; auto.
+ eapply REG. eapply REG.
}
- { repeat (try erewrite match_states_list; eauto; econstructor; eauto with rtlgp). }
- { repeat (try erewrite match_states_list; eauto; econstructor; eauto with rtlgp). }
{ repeat (try erewrite match_states_list; eauto; econstructor; eauto with rtlgp).
unfold regmap_optget. destruct or. rewrite REG. constructor; eauto.
constructor; eauto.