MCPcopy Create free account

hub / github.com/chyanju/picus / functions

Functions4,080 in github.com/chyanju/picus

↓ 4 callersMethodto_disjunct_systems
Translate each DNF disjunct (a conjunction of literals) into a stand-alone [`ConstraintSystem`]. Each disjunct clones the query-level builder (inherit
crates/picus-solver/src/boolean.rs:211
↓ 4 callersMethodtotal_degree
(&self)
crates/picus-core/src/ff/polynomial.rs:188
↓ 4 callersMethodtrail_len
Number of literals on the trail.
crates/picus-solver/src/sat/solver.rs:600
↓ 4 callersFunctionuf_find
(parent: &mut [usize], mut x: usize)
crates/picus-analysis/src/propagation/basis2/compconstant.rs:137
↓ 4 callersFunctionuse_f4_default
F4-lite default toggle. Reads [`crate::config::RuntimeConfig::use_f4`]. Used by all default `BuchbergerConfig` construction sites so the F4 path is co
crates/picus-solver/src/ff/buchberger/mod.rs:61
↓ 4 callersFunctionuse_sparse_gb
()
crates/picus-solver/src/gb/ideal/engine.rs:258
↓ 4 callersFunctionverdict
(o: &SolveOutcome)
crates/picus-solver/tests/cdclt_vs_dnf_parity.rs:25
↓ 4 callersMethodzero
(&self)
crates/picus-core/src/poly.rs:75
↓ 4 callersFunctionzero_blk
Empty (zero) constraint block.
crates/picus-smt/src/poly_ir_tests.rs:55
↓ 3 callersFunctionactive
In-flight timers (id -> (label, start_instant)). Used so a SIGTERM dump can include time spent in calls that haven't returned yet.
crates/picus-core/src/profile.rs:691
↓ 3 callersMethodadd
(&self, other: &Self, ring: &PolyRing)
crates/picus-core/src/ff/sparse_polynomial.rs:173
↓ 3 callersMethodadd
── arithmetic (operands coerced to a common arm) ───────────────
crates/picus-core/src/ff/polynomial.rs:212
↓ 3 callersMethodadd_owned
(&self, mut a: FieldElem, b: FieldElem)
crates/picus-core/src/ff/field.rs:497
↓ 3 callersFunctionadmit
Default split-admission predicate. `admit(i, p) = deg(p) <= 1 && (i == 0 || numTerms(p) <= 2)` - basis 0 (linear): admits `p` iff `deg(p) <= 1`.
crates/picus-solver/src/split_gb/mod.rs:86
↓ 3 callersFunctionbabyadd_gf7
Wire layout: 1=xout, 2=yout, 3=x1, 4=y1, 5=x2, 6=y2, 7=β, 8=γ, 9=δ, 10=τ.
crates/picus-analysis/src/propagation/tecomplete_tests.rs:78
↓ 3 callersFunctionbasis2_trap_r1cs
Synthetic basis2 trap: GF(11) with 4 bits, where `2^4 = 16 > 11` admits two distinct bit decompositions of the same target.
crates/picus-analysis/tests/soundness.rs:124
↓ 3 callersFunctionbiguint_to_u64
(b: &BigUint)
crates/picus-core/src/ff/field.rs:34
↓ 3 callersFunctionbitdecomp_system
Builds `k` bit constraints `b_i·(b_i − 1) = 0` plus one equality `s − (b_0 + 2·b_1 + ... + 2^{k-1}·b_{k-1}) = 0` over GF(`prime`). Returns the system
crates/picus-solver/src/frontend/encoder_tests.rs:92
↓ 3 callersFunctionbitsum_poly
Construct the polynomial `b_0 + 2*b_1 + ... + 2^k*b_k` for a bitsum.
crates/picus-solver/src/frontend/bitprop.rs:231
↓ 3 callersFunctionblk
(wid: u32, factor: u32)
crates/picus-smt/src/backends/native_lower_tests.rs:46
↓ 3 callersFunctionblock_to_linear
Build the linear polynomial `sum_i coeff_i * var_i` for one R1CS constraint block. Inputs use the original `x_i` index in both copies (they share the
crates/picus-smt/src/poly_ir.rs:360
↓ 3 callersFunctionbn128_prime
()
crates/picus-solver/tests/bench_perf.rs:16
↓ 3 callersMethodbucket_is_empty
(&self, idx: usize)
crates/picus-core/src/ff/sparse_geobucket.rs:73
↓ 3 callersMethodbuild
(&self)
crates/picus-solver/tests/common/mod.rs:95
↓ 3 callersFunctioncapped_capacity
Returns a safe `Vec::with_capacity` hint: `min(claimed, data_len)`, further capped at [`ABSOLUTE_COUNT_CAP`]. Adversarial headers claiming 4 G constra
crates/picus-r1cs/src/parser.rs:57
↓ 3 callersFunctionchain_is_bool
Sort of an `=` / `distinct` chain, checked for consistency. SMT-LIB requires every operand to share one sort; classifying by the first argument alone
crates/picus-solver/src/smt2/mod.rs:716
↓ 3 callersFunctioncheck_r1cs
Check uniqueness on a pre-parsed R1csFile. Useful when you want to inspect the R1CS structure before running the analysis, or when running multiple a
crates/picus/src/lib.rs:300
↓ 3 callersFunctionclassify_propagation
Classify whether candidate `p` (with precomputed `p_hash`) should be queued as a new generator of partition `j`, updating `contains_memo`. The memo r
crates/picus-solver/src/split_gb/mod.rs:157
↓ 3 callersMethodcoeffs
Slice view of the coefficient vector after trimming. Exposed for tests and diagnostic comparisons.
crates/picus-solver/src/ff/hilbert.rs:154
↓ 3 callersFunctioncompute_gb_with_timeout
Compute a Groebner basis with optional timeout. Phase 1: DegRevLex GB (faster ordering for reduction). Phase 2: Lex GB from Phase 1 output (needed fo
crates/picus-solver/src/gb/mod.rs:54
↓ 3 callersMethodcompute_traced
( &self, pr: &FfPolyRing, gens: Vec<Poly>, cancel: &CancelToken, order
crates/picus-solver/src/gb/ideal/engine.rs:102
↓ 3 callersFunctioncorpus
Full bench corpus as `(family, label, source)` triples.
crates/picus-solver/src/frontend/bench_fixtures.rs:183
↓ 3 callersMethodctx
(&mut self)
crates/picus-analysis/src/propagation/tecomplete_tests.rs:66
↓ 3 callersFunctioncurve25519_field
Curve25519 base field prime (2^255 - 19).
crates/picus-solver/src/split_gb/tests_hard.rs:64
↓ 3 callersMethoddehom
Dehomogenize a polynomial in `Ph` back to `P` by setting `h := 1`. Implementation: walks `terms(q)` and rebuilds with the leading `n` exponents, drop
crates/picus-solver/src/gb/homog_ring.rs:134
↓ 3 callersMethoddnf_size_estimate
Upper-bound estimate of `self.to_dnf().len()`, computed without materializing the DNF. Saturates at `cap` (returned as `cap`). `True` evaluates to 1,
crates/picus-solver/src/boolean.rs:124
↓ 3 callersFunctionechelonize
In-place sparse row echelon reduction over GF(p), tracking provenance. `rows` and `provs` are parallel; `provs[i]` accumulates the inputs whose contr
crates/picus-core/src/ff/linalg.rs:46
↓ 3 callersFunctionencode_constraint_side
Like [`encode`], but passes `emit_rabinowitsch = false` to `encode_impl` so no Rabinowitsch witnesses are emitted for disequalities.
crates/picus-solver/src/frontend/encoder.rs:137
↓ 3 callersMethodeq_el
(&self, a: &FieldElem, b: &FieldElem)
crates/picus-core/src/ff/field.rs:701
↓ 3 callersFunctioneval_eq_ref
Independent math reference: evaluate an `equality` (list of `PolyTerm`) at a `BigUint`-indexed assignment, modulo `p`. The caller is responsible for s
crates/picus-solver/src/frontend/encoder_tests_spec.rs:83
↓ 3 callersFunctioneval_poly
Evaluate `p` at the given point (length = n_vars). Returns the field element.
crates/picus-solver/src/split_gb/tests.rs:311
↓ 3 callersFunctionfglm_to_lex_cancel
Cancel-aware FGLM: same as [`fglm_to_lex`] but bails out with `None` when `cancel` fires mid-walk (large staircases on big primes can otherwise run fo
crates/picus-solver/src/gb/fglm.rs:72
↓ 3 callersFunctionfield_inverse
Modular inverse of `coeff` in GF(`prime`) via Fermat's little theorem (`coeff^(prime-2) mod prime`). Returns `None` when no inverse is computable by t
crates/picus-solver/src/cdclt/mod.rs:31
↓ 3 callersFunctionfind_cvc5_include_dir
()
crates/cvc5-ff-sys/build.rs:380
↓ 3 callersFunctiongb_stats_enabled
()
crates/picus-core/src/profile.rs:235
↓ 3 callersFunctiongens_bc_and_xy
`{x^2 - x, x*y - 1}` over GF(7): non-homogeneous, so by-homog takes a genuinely different intermediate path from direct.
crates/picus-solver/tests/strategy_dispatch.rs:158
↓ 3 callersFunctionhand_partial
Build a `PartialBuild` over the given ring, with control over the inflight bases (seeded via `add_generators`) and the pending generator lists, so the
crates/picus-solver/src/incremental_context_tests.rs:629
↓ 3 callersFunctioninitial_ranges
Seed `ctx.ranges` with the values forced by the IR's structural pins (wire 0 = 1). Called once by the DPVL driver before the propagation loop starts.
crates/picus-analysis/src/propagation/range.rs:101
↓ 3 callersFunctioninteger_to_biguint
(i: &Integer)
crates/picus-core/src/ff/field.rs:28
↓ 3 callersMethodintern_negated_into
Intern the negation of this atom's polynomial into `builder`. Used by `ff_theory` to assemble the Rabinowitsch trick body `d - lhs = 0`, where `-lhs`
crates/picus-solver/src/cdclt/atoms.rs:194
↓ 3 callersFunctionis_bool_expr
Heuristic Bool-context detector: does the expression `s` produce a Bool value (rather than an FF term)? Used to dispatch `=` to iff vs. FF equality, a
crates/picus-solver/src/smt2/mod.rs:678
↓ 3 callersFunctionis_trivial
Check if a GB is trivial (ideal = whole ring).
crates/picus-solver/src/gb/mod.rs:175
↓ 3 callersFunctionleading_coefficient
Get the leading coefficient of a polynomial in a given monomial order.
crates/picus-solver/src/gb/ideal.rs:392
↓ 3 callersMethodleading_term
(&self, ring: &PolyRing)
crates/picus-core/src/ff/polynomial.rs:605
↓ 3 callersFunctionlin_eq_sys
`x + 3 = 0` over GF(7); SAT (x = 4). One equality, no diseq.
crates/picus-solver/src/incremental_context_tests.rs:8
↓ 3 callersFunctionlink_with
(name: &str)
crates/cvc5-ff-sys/build.rs:12
↓ 3 callersFunctionluby
`i`-th element of the Luby sequence (1-indexed): `1, 1, 2, 1, 1, 2, 4, 1, 1, 2, 1, 1, 2, 4, 8, …`.
crates/picus-solver/src/sat/solver.rs:247
↓ 3 callersFunctionmake_r1cs
( prime: BigUint, n_wires: u32, inputs: Vec<usize>, constraints: Vec<Constraint>, )
crates/picus-smt/src/backends/native_lower_tests.rs:18
↓ 3 callersFunctionmatch_decomp
Match `c0 * target + sum_i c_i * bit_i = 0`, where `c0` is ±1 (mod p) and the remaining coefficients (after sign normalisation) are a power-of-2 seque
crates/picus-analysis/src/propagation/basis2.rs:117
↓ 3 callersFunctionmatrix_det_mod
(matrix: &[Vec<BigUint>], p: &BigUint)
crates/picus-analysis/src/propagation/bim.rs:126
↓ 3 callersFunctionmax_fixpoint_iters
Iteration cap for the split-GB propagation fixpoint as a function of the partition count `k`. A safety bound against pathological propagation loops on
crates/picus-solver/src/split_gb/mod.rs:203
↓ 3 callersMethodmk_ff_sort
Create a finite field sort of the given size (modulus) in the given base.
crates/cvc5-ff/src/term_manager.rs:83
↓ 3 callersFunctionmonolithic_is_whole_ring
Build a monolithic ideal (single basis containing every original generator). Used as the spec oracle in differential tests against split-GB.
crates/picus-solver/src/split_gb/tests_hard.rs:77
↓ 3 callersMethodnext
(&mut self)
crates/picus-solver/src/ff/repr_oracle.rs:32
↓ 3 callersFunctionnext_value
Fetch the value following the flag at position `i`, or exit with a usage error if it is missing (e.g. the flag was the final argument).
crates/picus-solver/src/bin/cvc5_compare.rs:112
↓ 3 callersFunctionnum_terms
Number of terms in a polynomial.
crates/picus-solver/src/split_gb/mod.rs:213
↓ 3 callersMethodon_initial_basis
(&mut self, _idx: usize, _poly: &DensePoly)
crates/picus-solver/src/ff/buchberger/mod.rs:88
↓ 3 callersMethodon_initial_reducers
Called immediately before [`on_initial_basis`] to report the indices of basis elements that were potentially used as reducers when the new generator w
crates/picus-solver/src/ff/buchberger/mod.rs:87
↓ 3 callersMethodon_inter_reduce
(&mut self, affected: usize, reducers: &[usize])
crates/picus-solver/src/gb/tracer.rs:147
↓ 3 callersMethodordering_key
(&self)
crates/picus-solver/src/ff/sparse_gb.rs:70
↓ 3 callersFunctionparse_constraint_block
( data: &[u8], fs: usize, p: &BigUint, )
crates/picus-r1cs/src/parser.rs:322
↓ 3 callersFunctionparse_define_fun
Parse `(define-fun name ((p1 T1) ...) ret_T body)` into a `MacroDef`.
crates/picus-solver/src/smt2/mod.rs:1109
↓ 3 callersFunctionparse_var_equals_const
Match an equality literal of the form `x = const`. Returns `(var_idx, const_value)` on match; the index is in the input literal's frame.
crates/picus-solver/src/boolean.rs:293
↓ 3 callersFunctionpoint_to_map
Convert a PartialPoint to a compact map keyed by variable.
crates/picus-solver/src/split_gb/search.rs:84
↓ 3 callersMethodpoly_terms_vec
`poly_terms_idx` collected into the `Vec<PolyTerm>` form that `Literal` / `add_equality` consume (zero-coeff terms dropped).
crates/picus-smt/src/backends/native_lower.rs:102
↓ 3 callersFunctionpr
()
crates/picus-solver/src/gb/brancher_tests.rs:8
↓ 3 callersMethodpush
(&mut self)
crates/picus-solver/src/cdclt/orchestrator_tests.rs:211
↓ 3 callersFunctionquotient_dimension
`dim_k(S/I)` for the monomial ideal generated by `gens` — the number of standard monomials, i.e. the `k`-vector-space dimension of `S/I`. For `gens =
crates/picus-solver/src/ff/hilbert.rs:409
↓ 3 callersFunctionradical_membership_unsat
Monolithic-GB radical Safe fast-path (config `radical_membership`). `gens` is the full query system: constraint generators, bitsum definitions, and t
crates/picus-solver/src/core.rs:104
↓ 3 callersFunctionrand_poly
Build a random polynomial: `n_terms` terms, each a product of up to `max_degree` (randomly-chosen) indeterminates, with a random coefficient. Retries
crates/picus-solver/src/split_gb/tests.rs:291
↓ 3 callersMethodreduce_by_refs_counted_cancel_dms
Like [`Self::reduce_by_refs_counted_cancel`] but reuses the caller's precomputed leading-term DivMasks (`div_dms[i]` for `divisors[i]`), skipping the
crates/picus-core/src/ff/polynomial/dense_reduce.rs:72
↓ 3 callersMethodreduce_by_refs_counted_dms
Like [`Self::reduce_by_refs_counted`] but reuses the caller's precomputed leading-term DivMasks. Result-identical.
crates/picus-core/src/ff/polynomial/dense_reduce.rs:104
↓ 3 callersMethodreduce_spoly_against_active
Reduce `s_poly` against the current active basis, returning the normal form, the active-basis index list used (reduction order), and the per-divisor u
crates/picus-solver/src/ff/buchberger/mod.rs:766
↓ 3 callersFunctionrewrite_disjunctive_bit
Equivalent of cvc5's disjunctive-bit preprocessing pass. Rewrites every `(or (= x 0) (= x 1))` subformula to the polynomial equality `x * x = x` (a si
crates/picus-solver/src/boolean.rs:358
↓ 3 callersFunctionring
(n: usize)
crates/picus-solver/src/ff/buchberger/gvw_tests.rs:9
↓ 3 callersMethodrun_only
Drain the in-progress S-pair queue without adding new generators. Used by [`crate::incremental_context::IncrementalSolverContext`] to resume a previou
crates/picus-solver/src/ff/buchberger/incremental.rs:81
↓ 3 callersFunctionsample_r
(ring: &PolyRing)
crates/picus-core/src/ff/sparse_polynomial_tests.rs:74
↓ 3 callersFunctionsample_r
A third sample in 3 vars: x0 + x1 + x2
crates/picus-core/src/ff/polynomial/tests.rs:316
↓ 3 callersMethodseed_reduced_basis
Seed the engine with a polynomial set that is already a reduced GB in the engine's order. Skips S-pair generation among these inputs entirely — the ca
crates/picus-solver/src/ff/buchberger/incremental.rs:58
↓ 3 callersFunctionseed_self_membership
Seed the cross-iteration containment memo with self-membership: every polynomial already in partition `j`'s basis trivially satisfies `contains(p, j)`
crates/picus-solver/src/split_gb/mod.rs:186
↓ 3 callersMethodselect
Pick the next signal from the unknown pool to send to the solver. Returns `None` when the pool is empty.
crates/picus-analysis/src/selector.rs:47
↓ 3 callersMethodset_cancel_token
Swap in a fresh cancel token. Each [`crate::incremental_context::IncrementalSolverContext::solve`] invocation produces its own per-call cancel token;
crates/picus-solver/src/ff/buchberger/incremental.rs:95
↓ 3 callersFunctionsmall_add
(a: u64, b: u64, p: u64)
crates/picus-core/src/ff/field.rs:742
↓ 3 callersFunctionsmall_sub
(a: u64, b: u64, p: u64)
crates/picus-core/src/ff/field.rs:752
↓ 3 callersFunctionsparse_to_map
(p: &SparsePolynomial, r: &PolyRing)
crates/picus-solver/src/ff/repr_oracle.rs:270
↓ 3 callersFunctionsplit_zero_extend_cancel
( poly_ring: &'r FfPolyRing, orig_polys: &[Poly], initial_bases: SplitGb<'r>, initial_r: Parti
crates/picus-solver/src/split_gb/search.rs:50
↓ 3 callersFunctionsquarefree
Squarefree part: `f / gcd(f, f')`.
crates/picus-solver/src/ff/univariate.rs:241
↓ 3 callersMethodsub_owned
(&self, mut a: FieldElem, b: FieldElem)
crates/picus-core/src/ff/field.rs:515
↓ 3 callersMethodsub_scaled_tail
Like `sub_scaled` but skips the divisor's leading term — used during reduction where the LT contribution exactly cancels the polynomial's already-popp
crates/picus-core/src/ff/geobucket.rs:163
↓ 3 callersFunctionsync_theory_after_backtrack
( sat: &Solver, theory: &mut T, theory_levels: &mut usize, )
crates/picus-solver/src/cdclt/orchestrator.rs:406
← previousnext →601–700 of 4,080, ranked by callers