diff options
Diffstat (limited to 'src/verilog/Value.v')
-rw-r--r-- | src/verilog/Value.v | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/verilog/Value.v b/src/verilog/Value.v index 52a87e3..e7b2362 100644 --- a/src/verilog/Value.v +++ b/src/verilog/Value.v @@ -345,6 +345,18 @@ Proof. simpl. rewrite <- Pos2Z.inj_pow_pos. trivial. Qed. +Lemma valueToPos_posToValue : + forall p, valueToPos (posToValueAuto p) = p. +Proof. + intros. unfold valueToPos, posToValueAuto. + rewrite uvalueToZ_ZToValue. auto. rewrite positive_nat_Z. + split. apply Zle_0_pos. + + assert (p < 2 ^ (Pos.size p))%positive by apply Pos.size_gt. + inversion H. rewrite <- Z.compare_lt_iff. rewrite <- H1. + simpl. rewrite <- Pos2Z.inj_pow_pos. trivial. +Qed. + Lemma valueToInt_intToValue : forall v, valueToInt (intToValue v) = v. |