File tree Expand file tree Collapse file tree 1 file changed +22
-0
lines changed
Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -112,3 +112,25 @@ example (ge : m ≥ n) (x : BitVec n) (i : Nat) :
112112 grind =>
113113 instantiate only [= getMsbD_setWidth']
114114 cases #aa9d
115+
116+ /--
117+ info: Try this:
118+ [ apply ] cases #9942 <;>
119+ instantiate only [= BitVec.getElem_and] <;> instantiate only [= BitVec.getElem_or] <;> cases #cfbc
120+ -/
121+ #guard_msgs in
122+ example (x y : BitVec 64 ) : (x ||| y) &&& x = x := by
123+ grind => finish?
124+
125+ macro_rules | `(tactic| get_elem_tactic_extensible) => `(tactic| grind)
126+
127+ /--
128+ info: Try this:
129+ [ apply ] ⏎
130+ instantiate only [= Array.getElem_set]
131+ ring
132+ -/
133+ #guard_msgs in
134+ example (a : Array (BitVec 64 )) (i : Nat) (v : BitVec 64 )
135+ : (_ : i < a.size) → (_ : i + 1 < a.size) → (a.set i v)[i+1 ] + a[i+1 ] = 2 *a[i+1 ] := by
136+ grind => finish?
You can’t perform that action at this time.
0 commit comments