MCPcopy Create free account

hub / github.com/chyanju/picus / functions

Functions4,080 in github.com/chyanju/picus

↓ 7 callersMethodreduce_by
── reduction (normal form modulo divisors) ─────────────────────
crates/picus-core/src/ff/polynomial.rs:259
↓ 7 callersFunctionring
()
crates/picus-solver/src/ff/repr_oracle.rs:49
↓ 7 callersMethodrun
(&mut self, observer: &mut O)
crates/picus-solver/src/ff/buchberger/mod.rs:865
↓ 7 callersMethodscale
(&self, c: &FieldElem, ring: &PolyRing)
crates/picus-core/src/ff/polynomial.rs:233
↓ 7 callersMethodslot_atoms_mut
Mutable borrow of a slot's atom table for atom interning by the caller.
crates/picus-solver/src/cdclt/multi_prime.rs:90
↓ 7 callersFunctionsolve
(system: &NamedSystem)
crates/picus-solver/tests/multi_root_polysystem_verdicts.rs:23
↓ 7 callersMethodto_dnf
Expand to disjunctive normal form. Caller must call [`nnf`] first. The result is `Vec<Vec<Literal>>` where the outer list is the disjuncts and each in
crates/picus-solver/src/boolean.rs:82
↓ 7 callersMethodto_sparse
Convert to the sparse representation (boundary helper).
crates/picus-core/src/ff/polynomial.rs:302
↓ 7 callersFunctionunivariate_coeffs
Coefficient vector (lowest degree first) of `p` viewed as a univariate polynomial in `var_idx`; `None` if any other variable appears. Shared by model
crates/picus-solver/src/gb/brancher.rs:94
↓ 7 callersFunctionwire_connectivity_score
Per-wire connectivity score: the count of distinct constraints whose support touches the wire. Used by the counter-style signal selector to prefer wir
crates/picus-analysis/src/propagation/mod.rs:45
↓ 6 callersMethodadd_known_wire
Record that wire `w` has been proved unique by the DPVL outer loop. Appends `x_w - y_w = 0` to [`Self::equalities`] so the next backend call sees it a
crates/picus-smt/src/poly_ir.rs:144
↓ 6 callersFunctionall_descriptors
All lemmas discovered via the inventory registry, sorted by name so execution order is reproducible across runs.
crates/picus-analysis/src/propagation/lemma.rs:77
↓ 6 callersMethodappearing_variables
── dense-flavoured readers (sparse arm materialises) ───────────
crates/picus-core/src/ff/polynomial.rs:310
↓ 6 callersFunctionassert_fglm_ideal_eq_direct
SPEC: FGLM output must generate the same ideal as direct Lex Buchberger of the same generators. Probe via mutual ideal-membership instead of canonical
crates/picus-solver/src/gb/fglm_tests.rs:241
↓ 6 callersFunctionblk
(wid: u32, factor: u32)
crates/picus-smt/src/backends/native_ff_tests.rs:47
↓ 6 callersMethodcompute
(&self, mon: &Monomial)
crates/picus-core/src/ff/divmask.rs:71
↓ 6 callersFunctioncompute_candidates
Compute branching candidates using the same 3-case strategy as cvc5's `applyRule` (and the in-tree `split_gb::apply_rule`), extended with a Case 2.5 F
crates/picus-solver/src/gb/model.rs:284
↓ 6 callersFunctionctx_state
Construct a default PropagationCtx for `n_wires` wires with the given binary-set on `bit_wires` (mirroring what binary01 produces) and the given known
crates/picus-analysis/src/propagation/basis2_tests.rs:254
↓ 6 callersMethoddivmask
(&self)
crates/picus-core/src/ff/sparse_monomial.rs:39
↓ 6 callersFunctionempty_block
()
crates/picus-r1cs/src/grammar_tests.rs:8
↓ 6 callersMethodenqueue
Assign `lit` to True with the given reason. Returns `false` when the assignment conflicts with the existing value of `lit.var()` (i.e. we are trying t
crates/picus-solver/src/sat/solver.rs:386
↓ 6 callersFunctionfield7
()
crates/picus-solver/src/gb/brancher_tests.rs:4
↓ 6 callersFunctionfinite_field_prime_str
If `sort` is `(_ FiniteField <p>)`, return the prime literal `<p>` as a string; otherwise `None`. Centralises the shape detection repeated at every so
crates/picus-solver/src/smt2/mod.rs:107
↓ 6 callersFunctiongens_xy_minus_1
`x*y - 1 = 0` over GF(7) — non-homogeneous, so the Auto resolver would pick `ByHomog` and the two strategies take different intermediate paths (final
crates/picus-solver/tests/strategy_dispatch.rs:34
↓ 6 callersFunctioninterreduce_basis
( poly_ring: &FfPolyRing, basis: Vec<Poly>, cancel: &CancelToken, )
crates/picus-solver/src/gb/ideal.rs:409
↓ 6 callersMethodintersect
Tighten this range by intersecting with `new_vals`. A `Bottom` range adopts `new_vals` wholesale.
crates/picus-analysis/src/propagation/range.rs:49
↓ 6 callersMethodinto_arm
Coerce to the ring's configured arm (no-op when already correct). Used to reconcile a representation-neutral `zero()` with operands built over the rin
crates/picus-core/src/ff/polynomial.rs:117
↓ 6 callersMethoditer_terms
(&self)
crates/picus-core/src/ff/sparse_polynomial.rs:96
↓ 6 callersFunctionlcg
Deterministic LCG (no `rand` dependency; reproducible across runs).
crates/picus-core/src/ff/field_tests.rs:1039
↓ 6 callersMethodmake_monic
(&self, ring: &PolyRing)
crates/picus-core/src/ff/polynomial.rs:245
↓ 6 callersFunctionmake_partial_build
Build a `PartialBuild` for a small constraint system and feed it to `continue_partial`. Mirrors what `rebuild_base` would save on cancellation, but co
crates/picus-solver/src/incremental_context_tests.rs:456
↓ 6 callersFunctionmake_tiny_ir
Build a tiny PolyIR with a hand-crafted equality list. Uses `n_wires` wires (so the ring carries `2 * n_wires` variables). `equalities` is built by t
crates/picus-analysis/src/propagation/tests.rs:89
↓ 6 callersMethodmerge_owned
Move-based merge for cases where both inputs are owned. Recycles each input's `FieldElem` allocations into the output rather than cloning them, elimin
crates/picus-core/src/ff/polynomial.rs:819
↓ 6 callersMethodneg
(var: Var)
crates/picus-solver/src/sat/lit.rs:31
↓ 6 callersMethodon_new_poly
(&mut self, _idx: usize, _poly: &DensePoly, from_pair: (usize, usize))
crates/picus-solver/src/gb/tracer.rs:118
↓ 6 callersFunctionpopulate_bitprop
Populate a `BitProp` by scanning the encoded polynomials for bit constraints (`x*(x-1) = 0`) and bitsum patterns.
crates/picus-solver/src/core.rs:46
↓ 6 callersFunctionpr_one_var
()
crates/picus-solver/src/split_gb/branching_tests.rs:5
↓ 6 callersFunctionr1cs_file
(constraints: Vec<Constraint>, m_constraints: u32)
crates/picus-r1cs/src/grammar_tests.rs:25
↓ 6 callersMethodreduce
Reduce `p` modulo the ideal. Returns the *normal form* of `p`.
crates/picus-solver/src/gb/ideal.rs:161
↓ 6 callersMethodreduce_by_refs_naive
Single-vector reduction with fused `merge_sub_scaled_tail`. The cross-validation reference for the geobucket-based `reduce_by_refs`.
crates/picus-core/src/ff/polynomial/dense_reduce.rs:522
↓ 6 callersMethodrem
(&self, other: &Self, field: &PrimeField)
crates/picus-solver/src/ff/univariate.rs:172
↓ 6 callersFunctionresolve
Resolve a registry index back to its matrix order. Panics in debug if the index was never interned on this thread.
crates/picus-core/src/ff/matrix_order.rs:173
↓ 6 callersFunctionrun_with
(input: &str)
crates/picus-solver/tests/run_smt2_smoke.rs:17
↓ 6 callersMethodset_target
Set the current uniqueness target. Updates `target_signal` and rebuilds `disequalities` to point at the new target's `(x, y)` pair. The constraint set
crates/picus-smt/src/poly_ir.rs:158
↓ 6 callersMethodsolve
( &mut self, ir: &PolyIR, timeout_ms: u64, cancel: &CancelToken, )
crates/picus-smt/src/backends/z3_nia.rs:28
↓ 6 callersMethodtail_reduce_active
In-place tail-reduce all active basis elements. For each active element `i`, computes the normal form of `basis[i].poly` modulo all OTHER active elem
crates/picus-solver/src/ff/buchberger/mod.rs:655
↓ 6 callersMethodvalue
Current value of a variable.
crates/picus-solver/src/sat/solver.rs:267
↓ 6 callersFunctionverify_model
Verify that an assignment satisfies all polynomials. The model must assign every variable appearing in `polys`. A variable missing from the model is
crates/picus-solver/src/gb/model.rs:484
↓ 6 callersFunctionxorshift
Tiny xorshift used to build deterministic random Boolean inputs.
crates/picus-solver/tests/cdclt_vs_dnf_parity.rs:966
↓ 5 callersMethodadd_generators_incremental
Incrementally update `self = N(I)` to `N(I ∪ {new_gens})` using the Bigatti–Caboara–Robbiano recursion ```text N(I ∪ {g}) = N(I) − t^deg(g) · N(I : g
crates/picus-solver/src/ff/hilbert.rs:236
↓ 5 callersFunctionadd_term
Accumulate `c · monomial(k)` into `m`, reduced mod `p`.
crates/picus-analysis/src/propagation/tecomplete.rs:182
↓ 5 callersMethodapply_overlay
Merge an overlay (one config layer) onto this config; only the overlay's `Some` fields override. A bad enum string in the analysis layer surfaces as [
crates/picus/src/lib.rs:159
↓ 5 callersFunctionapply_rule_multi
( poly_ring: &'r FfPolyRing, bases: &[Ideal<'r>], r: &PartialPoint, )
crates/picus-solver/src/split_gb/branching.rs:91
↓ 5 callersFunctionbiguint_to_integer
(b: &BigUint)
crates/picus-core/src/ff/field.rs:22
↓ 5 callersFunctionblk
Single-term constraint block: `factor * x_wid`.
crates/picus-smt/src/poly_ir_tests.rs:46
↓ 5 callersFunctionblock
(pairs: &[(u32, u32)])
crates/picus-analysis/src/propagation/basis2_tests.rs:32
↓ 5 callersFunctionblock
(nnz: u32, wire_ids: Vec<u32>, factors: Vec<BigUint>)
crates/picus-r1cs/src/grammar_tests.rs:4
↓ 5 callersFunctionbuild_decomp_poly
(ir: &PolyIR, target: usize, bits: &[usize])
crates/picus-analysis/src/propagation/basis2/compconstant_tests.rs:907
↓ 5 callersFunctionbuild_match_part_poly
( ir: &PolyIR, sl: usize, sm: usize, out: usize, prod_c: &BigUint, sl_c: &BigUint,
crates/picus-analysis/src/propagation/basis2/compconstant_tests.rs:496
↓ 5 callersFunctionbuild_x1_squared_eq_x2
Build a synthetic R1CS over GF(7) encoding the trivial constraint `x_1 * x_1 = x_2` over 3 wires (wire 0 is the one-wire, wire 1 is the input, wire 2
crates/picus-smt/tests/multi_prime.rs:21
↓ 5 callersFunctionbuilder_with_vars
Construct a builder pre-populated with the given var names.
crates/picus-solver/src/boolean_tests.rs:13
↓ 5 callersMethodcheck_cancel
(&self)
crates/picus-solver/src/ff/buchberger/mod.rs:381
↓ 5 callersFunctioncompute_gb
Compute a Groebner basis without timeout.
crates/picus-solver/src/gb/mod.rs:44
↓ 5 callersFunctioncompute_gb_incremental_with_order
( poly_ring: &FfPolyRing, known_gb: Vec<Poly>, new_polys: Vec<Poly>, cancel: &CancelToken,
crates/picus-solver/src/gb/ideal/engine.rs:449
↓ 5 callersMethodcompute_tier2
Tier 2: a positive multi-var atom A on the trail reduces under `pinned` to `a·v + c = 0` (single unpinned linear var `v`, `a ≠ 0`). Solve `v = −c · a⁻
crates/picus-solver/src/cdclt/ff_theory.rs:98
↓ 5 callersMethoddeactivate_superseded
Non-strict deactivation: deactivate every active element in `0..upto` whose leading monomial is divisible by `lt`. Run after `generate_pairs_against`,
crates/picus-solver/src/ff/buchberger/mod.rs:620
↓ 5 callersFunctioneliminate_linear
Eliminate the linear part of `polys` by Gaussian elimination and substitute the result into the nonlinear part. See the module docs.
crates/picus-solver/src/gb/linsolve.rs:47
↓ 5 callersMethodengine_stats
Per-run profiling counters accumulated across every `add_generators` / `run_only` call. Pure telemetry — no field drives engine logic; counters only a
crates/picus-solver/src/ff/buchberger/incremental.rs:180
↓ 5 callersFunctionexit_error
(msg: &str)
crates/picus-cli/src/main.rs:474
↓ 5 callersMethodexponent
(&self, var: usize)
crates/picus-core/src/ff/monomial.rs:73
↓ 5 callersFunctionextract_linear_monomials
Decompose a polynomial into a list of linear monomials and a list of "rest" (constant + non-linear) terms (each rest term as a single-term polynomial)
crates/picus-solver/src/frontend/parse.rs:199
↓ 5 callersFunctionff
(p: u32)
crates/picus-solver/src/gb/linsolve_tests.rs:5
↓ 5 callersMethodfor_each_nonzero
(&self, mut f: impl FnMut(usize, u16))
crates/picus-core/src/ff/monomial.rs:214
↓ 5 callersMethodgcd
Monic GCD of `self` and `other` (Euclidean algorithm).
crates/picus-solver/src/ff/univariate.rs:177
↓ 5 callersMethodget_mut
(&mut self, cref: ClauseRef)
crates/picus-solver/src/sat/clause.rs:54
↓ 5 callersFunctionhandle_assert
( s: &Sexpr, prime: &BigUint, vars: &HashMap<String, VarSort>, builder: &mut ConstraintSystemB
crates/picus-solver/src/smt2/mod.rs:395
↓ 5 callersMethodhf_at
Value of the graded Hilbert function `HF(S/I)(d)` in `n_vars` variables, where `self = N(t)` is the Hilbert numerator: the coefficient of `t^d` in `N(
crates/picus-solver/src/ff/hilbert.rs:168
↓ 5 callersFunctionintern
Intern a matrix order, returning its registry index for use as `MonomialOrder::Matrix(idx)`.
crates/picus-core/src/ff/matrix_order.rs:162
↓ 5 callersFunctionintern_eq
( atoms: &mut AtomTable, sat: &mut crate::sat::Solver, vn: &mut Vec<String>, var: &str, rh
crates/picus-solver/src/cdclt/ee_filtered_tests.rs:50
↓ 5 callersFunctionintern_eq_var
( tbl: &mut AtomTable, sat: &mut Solver, vn: &mut Vec<String>, var: &str, c: u64, )
crates/picus-solver/src/cdclt/multi_prime_tests.rs:33
↓ 5 callersMethodis_auxiliary
`true` iff `v` is a Tseitin / orchestration auxiliary variable rather than an FF atom.
crates/picus-solver/src/cdclt/atoms.rs:323
↓ 5 callersMethodis_coprime
(&self)
crates/picus-solver/src/ff/spair.rs:64
↓ 5 callersMethodis_unsat
Has the formula been proved UNSAT at the root?
crates/picus-solver/src/sat/solver.rs:277
↓ 5 callersMethodis_zero
(&self)
crates/picus-core/src/ff/geobucket.rs:213
↓ 5 callersMethodlcm_divmask
(&self)
crates/picus-solver/src/ff/spair.rs:61
↓ 5 callersMethodlift
Lift a polynomial from `P` into `Ph` (φ). This is the embedding `x_i ↦ x_i`, leaving the `h` exponent at 0 in every term. Implementation: walks `ter
crates/picus-solver/src/gb/homog_ring.rs:64
↓ 5 callersFunctionlin_unsat_sys
`x = 1` ∧ `x = 2` over GF(7); UNSAT.
crates/picus-solver/src/incremental_context_tests.rs:45
↓ 5 callersFunctionmap_core_to_atoms
Map a theory UNSAT core (polynomial indices into `encoded`) back to the trail atom variables responsible, via per-polynomial provenance. `Equality(j)
crates/picus-solver/src/cdclt/ff_theory.rs:318
↓ 5 callersFunctionmatch_part
Match one CompConstant `parts_i` equality over the bit pair `(sl, sm)` (canonical low/high digit bits). On success returns the base-4 digit `c_i ∈ {0,
crates/picus-analysis/src/propagation/basis2/compconstant.rs:194
↓ 5 callersFunctionmerge_sorted_descending
Merge `incoming` (sorted descending by [`CriterionPair::cmp_key`]) into `dst` (also sorted descending), preserving descending order. O(n + m).
crates/picus-solver/src/ff/spair_criteria.rs:159
↓ 5 callersMethodmin_poly
Compute the minimal polynomial of `var_idx` in `R/I`.
crates/picus-solver/src/gb/ideal.rs:272
↓ 5 callersFunctionmk_pair_ij
( i: usize, j: usize, basis: &[BasisElement], ring: &PolyRing, age: u64, )
crates/picus-solver/src/ff/buchberger/tests.rs:171
↓ 5 callersFunctionmod_inverse
Modular inverse of `a` mod `p` via the extended Euclidean algorithm, or `None` when `a` is not invertible (not coprime to `p`). Shared by the lemmas t
crates/picus-analysis/src/propagation/mod.rs:24
↓ 5 callersMethodmul
(&self, other: &Self, ring: &PolyRing)
crates/picus-core/src/ff/polynomial.rs:226
↓ 5 callersFunctionmul_polys
Multiply two `Vec<PolyTerm>` lists. For each cross-product `t_a * t_b`, merge exponents per variable via `BTreeMap` (so `x*x` stays as `(x_idx, 2)` ra
crates/picus-solver/src/smt2/mod.rs:180
↓ 5 callersMethodn_atom_slots
Length of the variable-indexed atom slot vector. Callers iterate `0..n_atom_slots()` and use `atom(Var(i))` to skip aux slots.
crates/picus-solver/src/cdclt/atoms.rs:308
↓ 5 callersMethodname
(&self)
crates/picus-solver/src/gb/ideal/engine.rs:84
↓ 5 callersFunctionnonlinear_sat
`x·y - 1 = 0` over GF(7) (nonlinear); SAT.
crates/picus-solver/src/incremental_context_tests.rs:105
↓ 5 callersMethodordering_key
(&self)
crates/picus-solver/src/ff/spair.rs:31
↓ 5 callersFunctionpair_key
(a: usize, b: usize)
crates/picus-analysis/src/propagation/basis2/compconstant.rs:402
← previousnext →401–500 of 4,080, ranked by callers