Equations
- Std.Sat.AIG.RefVec.empty = { refs := { toArray := #[], size_toArray := Std.Sat.AIG.RefVec.empty.proof_1 }, hrefs := ⋯ }
def
Std.Sat.AIG.RefVec.emptyWithCapacity
{α : Type}
[Hashable α]
[DecidableEq α]
{aig : AIG α}
(c : Nat)
:
aig.RefVec 0
Equations
- Std.Sat.AIG.RefVec.emptyWithCapacity c = { refs := Vector.emptyWithCapacity c, hrefs := ⋯ }
@[simp]
theorem
Std.Sat.AIG.RefVec.emptyWithCapacity_eq
{α : Type}
[Hashable α]
[DecidableEq α]
{aig : AIG α}
{c : Nat}
:
@[inline]
def
Std.Sat.AIG.RefVec.append
{α : Type}
[Hashable α]
[DecidableEq α]
{aig : AIG α}
{lw rw : Nat}
(lhs : aig.RefVec lw)
(rhs : aig.RefVec rw)
:
def
Std.Sat.AIG.RefVec.countKnown
{α : Type}
[Hashable α]
[DecidableEq α]
{len : Nat}
(aig : AIG α)
(s : aig.RefVec len)
:
Equations
- Std.Sat.AIG.RefVec.countKnown aig s = Std.Sat.AIG.RefVec.countKnown.go aig s 0 0
@[irreducible]
def
Std.Sat.AIG.RefVec.countKnown.go
{α : Type}
[Hashable α]
[DecidableEq α]
{len : Nat}
(aig : AIG α)
(s : aig.RefVec len)
(idx acc : Nat)
:
Equations
- One or more equations did not get rendered due to their size.
structure
Std.Sat.AIG.BinaryRefVec
{α : Type}
[Hashable α]
[DecidableEq α]
(aig : AIG α)
(len : Nat)
:
Instances For
- Std.Tactic.BVDecide.BVExpr.bitblast.blastAdd.instLawfulVecOperatorBinaryRefVecBlast
- Std.Tactic.BVDecide.BVExpr.bitblast.blastMul.instLawfulVecOperatorBinaryRefVecBlast
- Std.Tactic.BVDecide.BVExpr.bitblast.instLawfulVecOperatorBinaryRefVecBlastAdd
- Std.Tactic.BVDecide.BVExpr.bitblast.instLawfulVecOperatorBinaryRefVecBlastMul
- Std.Tactic.BVDecide.BVExpr.bitblast.instLawfulVecOperatorBinaryRefVecBlastSub
- Std.Tactic.BVDecide.BVExpr.bitblast.instLawfulVecOperatorBinaryRefVecBlastUdiv
- Std.Tactic.BVDecide.BVExpr.bitblast.instLawfulVecOperatorBinaryRefVecBlastUmod
@[inline]
def
Std.Sat.AIG.BinaryRefVec.cast
{α : Type}
[Hashable α]
[DecidableEq α]
{len : Nat}
{aig1 aig2 : AIG α}
(s : aig1.BinaryRefVec len)
(h : aig1.decls.size ≤ aig2.decls.size)
:
aig2.BinaryRefVec len
@[simp]
@[simp]