HepLean Documentation

Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.Neg

This module contains the verification of the bitblaster for BitVec.neg from Impl.Operations.Neg.

theorem Std.Tactic.BVDecide.BVExpr.bitblast.denote_blastNeg {α : Type} [Hashable α] [DecidableEq α] {w : Nat} (aig : Std.Sat.AIG α) (value : BitVec w) (target : aig.RefVec w) (assign : αBool) (htarget : ∀ (idx : Nat) (hidx : idx < w), assign, { aig := aig, ref := target.get idx hidx } = value.getLsbD idx) (idx : Nat) (hidx : idx < w) :
assign, { aig := (Std.Tactic.BVDecide.BVExpr.bitblast.blastNeg aig target).aig, ref := (Std.Tactic.BVDecide.BVExpr.bitblast.blastNeg aig target).vec.get idx hidx } = (-value).getLsbD idx