finish proof_of_mpn_add_n_return_wit_1
This commit is contained in:
@ -1226,7 +1226,68 @@ Proof.
|
|||||||
Qed.
|
Qed.
|
||||||
|
|
||||||
Lemma proof_of_mpn_add_n_return_wit_1 : mpn_add_n_return_wit_1.
|
Lemma proof_of_mpn_add_n_return_wit_1 : mpn_add_n_return_wit_1.
|
||||||
Proof. Admitted.
|
Proof.
|
||||||
|
pre_process.
|
||||||
|
assert (l_a_2 = l_a). {
|
||||||
|
pose proof (list_store_Z_compact_reverse_injection l_a_2 l_a val_a val_a).
|
||||||
|
specialize (H29 H20 H5).
|
||||||
|
apply H29.
|
||||||
|
reflexivity.
|
||||||
|
}
|
||||||
|
subst l_a_2.
|
||||||
|
assert (l_b_2 = l_b). {
|
||||||
|
pose proof (list_store_Z_compact_reverse_injection l_b_2 l_b val_b val_b).
|
||||||
|
specialize (H29 H16 H6).
|
||||||
|
apply H29.
|
||||||
|
reflexivity.
|
||||||
|
}
|
||||||
|
subst l_b_2.
|
||||||
|
assert (i = n_pre) by lia.
|
||||||
|
Exists val_r_prefix.
|
||||||
|
unfold mpd_store_Z_compact.
|
||||||
|
unfold mpd_store_list.
|
||||||
|
Exists l_a.
|
||||||
|
Exists l_b.
|
||||||
|
entailer!.
|
||||||
|
+ rewrite H14.
|
||||||
|
rewrite H18.
|
||||||
|
entailer!.
|
||||||
|
unfold mpd_store_Z.
|
||||||
|
Exists l_r_prefix.
|
||||||
|
rewrite H29 in *.
|
||||||
|
entailer!.
|
||||||
|
unfold mpd_store_list.
|
||||||
|
entailer!.
|
||||||
|
rewrite H10.
|
||||||
|
entailer!.
|
||||||
|
apply store_uint_array_rec_def2undef.
|
||||||
|
+ rewrite <- H29.
|
||||||
|
assert (val_a_prefix = val_a). {
|
||||||
|
assert (i = Zlength l_a). {
|
||||||
|
lia.
|
||||||
|
}
|
||||||
|
rewrite H30 in H7.
|
||||||
|
rewrite sublist_self in H7.
|
||||||
|
unfold list_store_Z_compact in H5.
|
||||||
|
unfold list_store_Z in H7.
|
||||||
|
lia.
|
||||||
|
reflexivity.
|
||||||
|
}
|
||||||
|
rewrite <- H30; clear H30.
|
||||||
|
assert (val_b_prefix = val_b). {
|
||||||
|
assert (i = Zlength l_b). {
|
||||||
|
lia.
|
||||||
|
}
|
||||||
|
rewrite H30 in H8.
|
||||||
|
rewrite sublist_self in H8.
|
||||||
|
unfold list_store_Z_compact in H6.
|
||||||
|
unfold list_store_Z in H8.
|
||||||
|
lia.
|
||||||
|
reflexivity.
|
||||||
|
}
|
||||||
|
rewrite <- H30; clear H30.
|
||||||
|
tauto.
|
||||||
|
Qed.
|
||||||
|
|
||||||
Lemma proof_of_mpn_add_n_which_implies_wit_1 : mpn_add_n_which_implies_wit_1.
|
Lemma proof_of_mpn_add_n_which_implies_wit_1 : mpn_add_n_which_implies_wit_1.
|
||||||
Proof. Admitted.
|
Proof. Admitted.
|
||||||
|
Reference in New Issue
Block a user