From c83cb07f1477de33ce9eb43eea6a4f2720a94763 Mon Sep 17 00:00:00 2001 From: Jason Gross Date: Sat, 21 Jan 2017 18:48:24 -0500 Subject: Move weqb_hetero to Bedrock.Word --- Bedrock/Word.v | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'Bedrock') diff --git a/Bedrock/Word.v b/Bedrock/Word.v index 2c518807d..10bd452bb 100644 --- a/Bedrock/Word.v +++ b/Bedrock/Word.v @@ -300,6 +300,16 @@ Definition weq : forall sz (x y : word sz), {x = y} + {x <> y}. abstract (rewrite (shatter_word y); simpl; intro; injection H; auto). Defined. +Fixpoint weqb_hetero sz1 sz2 (x : word sz1) (y : word sz2) : bool := + match x, y with + | WO, WO => true + | WO, _ => false + | WS b _ x', WS b' _ y' + => eqb b b' && @weqb_hetero _ _ x' y' + | WS _ _ _, _ + => false + end%bool. +Global Arguments weqb_hetero {_ _} _ _. Fixpoint weqb sz (x : word sz) : word sz -> bool := match x in word sz return word sz -> bool with | WO => fun _ => true -- cgit v1.2.3