ABI version of the downstream factor-search registration boundary.
Equations
Instances For
One downstream partial-factor producer available to elaboration-time certificate search. The version is checked before the function is used.
- version : Nat
Version of the extension ABI implemented by this registration.
- factorName : Lean.Name
Fully qualified name of the registered partial-factor producer.
Instances For
Well-known search-extension constants, checked in deterministic order. Adding or reordering an entry requires a HexPrimality release.
Equations
- Hex.PrimalityTactic.searchExtensionNames = [`HexIntFactor.PrimalityTactic.extension]
Instances For
Registered factor-search extensions present in the environment. Each declaration's type and ABI version are checked before deterministic dispatch.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Eq.refl true as a raw proof slot: the kernel verifies the reified
Bool equation by reduction alone.
Equations
- Hex.PrimalityTactic.reflTrue = Lean.mkApp2 (Lean.mkConst `Eq.refl [Lean.Level.one]) (Lean.mkConst `Bool) (Lean.mkConst `Bool.true)
Instances For
Reify a certificate as constructor applications over Nat literals.
Pure data with no proof slots, so the reifier is total and the kernel
obligations all live in the one Eq.refl true slot of the wrapper.
Equations
- One or more equations did not get rendered due to their size.
- Hex.PrimalityTactic.reifyPrimeCert (Hex.Nat.PrimeCert.small n) = Lean.mkApp (Lean.mkConst `Hex.Nat.PrimeCert.small) (Lean.mkNatLit n)
- Hex.PrimalityTactic.reifyPrimeCert (Hex.Nat.PrimeCert.pock n factors) = Lean.mkApp2 (Lean.mkConst `Hex.Nat.PrimeCert.pock) (Lean.mkNatLit n) (Hex.PrimalityTactic.reifyFactors factors)
Instances For
Reify a factor list.
Equations
- One or more equations did not get rendered due to their size.
- Hex.PrimalityTactic.reifyFactors [] = Lean.mkApp (Lean.mkConst `List.nil [Lean.Level.zero]) Hex.PrimalityTactic.tripleTy✝
Instances For
Reject open terms: the search and the kernel replay both need a closed numeral.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Supported bit-length ceiling for every elaboration-time certificate route. The 512-bit boundary is the largest measured fresh-module rung; changing it requires new end-to-end search, reification, and kernel-replay evidence.
Equations
Instances For
Maximum recursive fuel passed to elaboration-time certificate search. The settled default is one unit per input bit, so this is deliberately the same quantity as the supported input ceiling. Keeping the definitions linked prevents one policy boundary from changing without the other.
Instances For
Maximum Brent restarts at one partial-factor worklist entry on every elaboration-time certificate route.
Equations
Instances For
Maximum Brent cycle steps per restart on every elaboration-time certificate route.
Equations
Instances For
The explicit rho allocation shared by every elaboration-time route.
Equations
- Hex.PrimalityTactic.primalitySearchBudget = { rhoRestarts := Hex.PrimalityTactic.primalityRhoRestartBudget, rhoSteps := Hex.PrimalityTactic.primalityRhoStepBudget }
Instances For
The fuel selected by every elaboration-time certificate route.
Equations
Instances For
Whether an input is admitted by the common elaboration policy.
Equations
Instances For
Enforce the common input-size policy before any certificate search.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Report bounded-search exhaustion without inviting an unbounded fallback.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Run the certificate search and emit the checked proof term with head
applied to the subject, the reified certificate, and the Eq.refl true
slot: prime_of_checkPrimeAt here, the companion's Nat.Prime-flavoured
wrapper there. The search result is self-checked with the same compiled
checkPrime the kernel will replay before anything is emitted.
Equations
- One or more equations did not get rendered due to their size.
Instances For
provePrimeWith at the Mathlib-free wrapper: the proof term for
Hex.Nat.Prime n.
Equations
- Hex.PrimalityTactic.provePrime tactic n nE = Hex.PrimalityTactic.provePrimeWith `Hex.Nat.prime_of_checkPrimeAt tactic n nE
Instances For
Elaborate a primality argument to its numeral and proof.
Equations
- One or more equations did not get rendered due to their size.
Instances For
primality n elaborates to a proof of Hex.Nat.Prime n for a literal
n.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Elaborator for the Mathlib-free primality n term syntax.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to close a goal of the form Hex.Nat.Prime e; return false when
the goal has a different shape.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Tactic forms of primality: bare primality closes a
Hex.Nat.Prime e goal; primality n adds the proof as this;
primality h : n names it h.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Evaluator for the Mathlib-free primality tactic forms.
Equations
- One or more equations did not get rendered due to their size.