Definition jmeq A B (v : interp A) (w : interp B) := forall pf, v = cast pf w.

(* Specifications: *)
Lemma jmrefl A (v : interp A) : jmeq v v.
Lemma jmsym A B (v : interp A) (w : interp B) : jmeq v w -> jmeq w v.
Lemma jmE A (v w : interp A) : jmeq v w <-> v = w.
Lemma castE A B (pf1 pf2 : A = B) (v1 v2 : interp B) : v1 = v2 <-> cast pf1 v1 = cast pf2 v2.