aboutsummaryrefslogtreecommitdiffstats
path: root/kvx/FPDivision64.v
diff options
context:
space:
mode:
authorDavid Monniaux <David.Monniaux@univ-grenoble-alpes.fr>2022-01-07 15:27:56 +0100
committerDavid Monniaux <David.Monniaux@univ-grenoble-alpes.fr>2022-01-07 15:27:56 +0100
commitaf9f4682a8e7f06fdf9eba707d008bc21873d1ce (patch)
tree2a30e96c0b4f0859bca5f746785712552ddd06ec /kvx/FPDivision64.v
parent4f8bd24d05bcea0a8b9793ee61450b1e0c7234c1 (diff)
downloadcompcert-kvx-af9f4682a8e7f06fdf9eba707d008bc21873d1ce.tar.gz
compcert-kvx-af9f4682a8e7f06fdf9eba707d008bc21873d1ce.zip
progress in proof
Diffstat (limited to 'kvx/FPDivision64.v')
-rw-r--r--kvx/FPDivision64.v23
1 files changed, 20 insertions, 3 deletions
diff --git a/kvx/FPDivision64.v b/kvx/FPDivision64.v
index 424dfc77..a44de06e 100644
--- a/kvx/FPDivision64.v
+++ b/kvx/FPDivision64.v
@@ -184,9 +184,26 @@ Proof.
fold b_d.
set (r_invb_d := B2R 53 1024 invb_d) in *.
set (r_b_d := B2R 53 1024 b_d) in *.
-
- unfold invb_d.
- unfold invb_s.
gappa.
}
+ fold b_d in C6.
+ destruct C6 as (C6R & C6F & _).
+
+ pose proof (Bfma_correct 53 1024 re re Float.fma_nan mode_NE
+ (Bfma 53 1024 re re Float.fma_nan mode_NE
+ (Bopp 53 1024 Float.neg_nan invb_d) b_d (BofZ 53 1024 re re 1))
+ invb_d invb_d C6F C3F C3F) as C7.
+ rewrite Rlt_bool_true in C7; cycle 1.
+ { clear C7.
+ rewrite C6R.
+ rewrite B2R_Bopp.
+ eapply (Rabs_relax (bpow radix2 64)).
+ { apply bpow_lt. lia. }
+ rewrite C4R.
+ cbn.
+ set (r_invb_d := B2R 53 1024 invb_d) in *.
+ set (r_b_d := B2R 53 1024 b_d) in *.
+ gappa.
+ }
+
Admitted.