This module implements parsers and serializers for both the binary and non-binary LRAT format.
@[inline]
Equations
Instances For
@[inline]
Equations
- Std.Tactic.BVDecide.LRAT.Parser.Text.parsePos = do let ident ← Std.Internal.Parsec.ByteArray.digits if (ident == 0) = true then Std.Internal.Parsec.fail "id was 0" else pure ident
Instances For
@[inline]
Equations
Instances For
@[inline]
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[specialize #[]]
def
Std.Tactic.BVDecide.LRAT.Parser.Binary.manyTillZero
{α : Type}
(parser : Std.Internal.Parsec.ByteArray.Parser α)
:
Equations
Instances For
@[specialize #[]]
partial def
Std.Tactic.BVDecide.LRAT.Parser.Binary.manyTillZero.go
{α : Type}
(parser : Std.Internal.Parsec.ByteArray.Parser α)
(acc : Array α)
:
@[specialize #[]]
def
Std.Tactic.BVDecide.LRAT.Parser.Binary.manyTillNegOrZero
{α : Type}
(parser : Std.Internal.Parsec.ByteArray.Parser α)
:
Equations
Instances For
@[specialize #[]]
partial def
Std.Tactic.BVDecide.LRAT.Parser.Binary.manyTillNegOrZero.go
{α : Type}
(parser : Std.Internal.Parsec.ByteArray.Parser α)
(acc : Array α)
:
Equations
- Std.Tactic.BVDecide.LRAT.Parser.Binary.parseRes = do let lhs ← Std.Tactic.BVDecide.LRAT.Parser.Binary.parseNeg let idents ← Std.Tactic.BVDecide.LRAT.Parser.Binary.parseIdList pure (lhs, idents)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Std.Tactic.BVDecide.LRAT.Parser.Binary.parseActions = do let actions ← Std.Internal.Parsec.many Std.Tactic.BVDecide.LRAT.Parser.Binary.parseAction Std.Internal.Parsec.eof pure actions
Instances For
Based on the first byte parses the input either as a binary or non-binary LRAT.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Read and parse an LRAT proof from path. path may contain either the binary or the non-binary
LRAT format.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Parse proof as an LRAT proof. proof may contain either the binary or the non-binary LRAT format.
Equations
Instances For
Serialize proof into the non-binary LRAT format as a String.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Serialize proof into the binary LRAT format as a ByteArray.
Equations
- Std.Tactic.BVDecide.LRAT.lratProofToBinary proof = Std.Tactic.BVDecide.LRAT.lratProofToBinary.go proof 0 (ByteArray.mkEmpty (4 * proof.size))
Instances For
partial def
Std.Tactic.BVDecide.LRAT.lratProofToBinary.go
(proof : Array Std.Tactic.BVDecide.LRAT.IntAction)
(idx : Nat)
(acc : ByteArray)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
partial def
Std.Tactic.BVDecide.LRAT.lratProofToBinary.variableLengthEncode
(acc : ByteArray)
(lit : UInt64)
:
@[inline]
Equations
- Std.Tactic.BVDecide.LRAT.lratProofToBinary.startAdd acc = acc.push 'a'.toUInt8
Instances For
@[inline]
Equations
- Std.Tactic.BVDecide.LRAT.lratProofToBinary.startDelete acc = acc.push 'd'.toUInt8
Instances For
@[inline]
Equations
- Std.Tactic.BVDecide.LRAT.lratProofToBinary.zeroByte acc = acc.push 0
Instances For
@[inline]
Equations
Instances For
def
Std.Tactic.BVDecide.LRAT.dumpLRATProof
(path : System.FilePath)
(proof : Array Std.Tactic.BVDecide.LRAT.IntAction)
(binaryProofs : Bool)
:
Dump proof into path, either in the binary or non-binary LRAT format, depending on binaryProofs.
Equations
- One or more equations did not get rendered due to their size.