(* SYMMETRICALLY, WE HAVE: *)

(* Specifications: *)
Lemma expf_B0_CS_1_b_prel1:forall (m:fmap)(x:dart)(i j:nat),
inv_hmap m -> succ m zero x ->
let x0 := cA m zero x in
let xb0 := bottom m zero x in
let xh0 := top m zero x in
let xh0_1 := cA_1 m one xh0 in
let p := MF.Iter_upb m xh0_1 in
let z := Iter (cF m) i xh0_1 in
x0 = Iter (cF m) j xh0_1 ->
(i <= j < p)%nat
-> expf (B m zero x) xh0_1 z.
Lemma expf_B0_CS_1_b_prel2:forall (m:fmap)(x z:dart),
inv_hmap m -> succ m zero x ->
let x0 := cA m zero x in
let xb0 := bottom m zero x in
let xh0 := top m zero x in
let xh0_1 := cA_1 m one xh0 in
expf m x0 xb0 -> betweenf m xh0_1 z x0
-> expf (B m zero x) xh0_1 z.
Lemma expf_B0_CS_1_b_aux:forall (m:fmap)(x z t:dart),
inv_hmap m -> succ m zero x -> exd m z -> exd m t ->
let x0 := cA m zero x in
let xb0 := bottom m zero x in
let xh0 := top m zero x in
let xh0_1 := cA_1 m one xh0 in
expf m x0 xb0 ->
(betweenf m xh0_1 z x0 /\  betweenf m xh0_1 t x0)
-> expf (B m zero x) z t.