Macaulay2 Engine
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 NBIBasis
 Nexc
 NM2
 Nmpfr
 Nnewf4
 NSchreyerFrameTypes
 NstdSTL namespace
 CAllocLoggerProcess-wide allocation counter used by StatsAllocator for debugging and benchmarking
 CARing
 CARingElement
 CARingElementGenerator
 CAssociatedPrimes
 Cauto_reduce_node
 CBASECLASSSynthetic documentation entry for the BASECLASS preprocessor macro (no real struct of this name exists)
 CBasicPolyStandalone, self-contained polynomial representation independent of any engine Ring — coefficients are bare mpz_class (GMP integers)
 CBasicPolyListStreamCollectorStreaming consumer that builds a BasicPolyList from per-term callbacks, matching the mathicgb / mgb stream interface
 CBettiDisplayEngine-side Betti table: a (degree, homological level) rectangle of integers
 CBettiHashAndEqCombined hash + equality functor for (int*, int) pairs, used by the resolution code to key an unordered_set on (monomial, component)
 Cbinomial
 Cbinomial_gb_elem
 Cbinomial_ring
 Cbinomial_s_pair
 Cbinomial_s_pair_set
 CbinomialGB
 CbinomialGB_compNon-functional
 CBRPBoolean (F_2-coefficient) polynomial stored as an ordered list of square-free monomials
 Cbuffer
 Ccc_doubles_struct
 CCC_structImmutable view of a complex number as a pair of mpfr_srcptr real and imaginary parts
 Ccc_struct
 CCCi_structImmutable view of a complex interval as a pair of mpfi_srcptr real and imaginary parts
 Ccci_struct
 CCCimutable_structMutable view of a complex interval as a pair of mpfi_ptr real and imaginary parts
 CCCmutable_structMutable view of a complex number as a pair of mpfr_ptr real and imaginary parts
 CChineseRemainder
 Ccoefficient_matrix
 CCoefficientRingRGeneric CoefficientRing adapter that wraps an arbitrary const Ring* and forwards every operation to it
 CCoefficientRingTypeDefault CoefficientRingType parameter for Polynomial<...>: a thin trait whose ElementType is just ring_elem
 CCoefficientRingZZpDiscrete-log Z/p adapter that represents non-zero residues by their exponent index relative to a generator
 Ccolumn_elem
 CColumnsSorterComparator that orders Macaulay-matrix column indices by the monomial each column represents, using the ambient MonomialInfo
 Ccomplex
 CComplexFieldField-traits tag used as the template parameter of SLP<Field> to pick the complex element type
 CComputationAbstract base for long-running, resumable engine computations (GBComputation, ResolutionComputation, MutableComplex, GBKernelComputation, ...)
 CConcreteVectorArithmetic
 CConstZipIterator
 CDegreeZeroMapGeneratorView of one cell of a SchreyerFrame as the degree-zero (scalar) part of the differential between two homological levels
 CDetComputationComputation of minors of a matrix
 CDMat
 CDMat< M2::ARingGFFlint >Specialisation of DMat for ARingGFFlint matrices, backed by FLINT's fq_zech_mat (Zech-log) routines
 CDMat< M2::ARingGFFlintBig >Specialisation of DMat for ARingGFFlintBig matrices, backed by FLINT's fq_nmod_mat_t
 CDMat< M2::ARingQQFlint >Specialisation of DMat for ARingQQFlint matrices, backed by FLINT's fmpq_mat_t
 CDMat< M2::ARingZZ >Specialisation of DMat for ARingZZ matrices, backed by FLINT's fmpz_mat_t
 CDMat< M2::ARingZZpFlint >Specialisation of DMat for ARingZZpFlint matrices, backed by FLINT's nmod_mat_t
 CDMatLinAlg
 CDMatLinAlg< M2::ARingQQ >Specialisation of DMatLinAlg for ARingQQ dense matrices, routing every linear-algebra query (rank, determinant, kernel, inverse, solve) through FLINT's fmpq_mat_* routines
 CDMatLinAlg< M2::ARingZZpFFPACK >Specialisation of DMatLinAlg for ARingZZpFFPACK dense matrices, delegating rank / determinant / kernel / solve / inverse to the FFPACK library's tuned Z/p routines
 CDMatLinAlg< M2::ARingZZpFlint >Specialisation of DMatLinAlg for ARingZZpFlint dense matrices, routing rank / determinant / kernel / solve / inverse calls to FLINT's nmod_mat_* routines
 CDMatLUinPlace
 Cdoubling_stash
 CDPolyArithmetic engine for tower-polynomial rings: (Z/p)[x_0][x_1]...[x_{nvars-1}] modulo a chain of extensions
 CDPolyTraverserVisitor base class that walks every term of a TowerPolynomial, calling viewTerm(coeff, exponents) once per leaf
 CDRingSingle-level view of a tower-polynomial ring: a DPoly plus a fixed working level and a Tower-flavoured ring_type typedef
 CEigenTypes
 CEigenTypes< M2::ARingCC >EigenTypes specialisation for double-precision complex matrices
 CEigenTypes< M2::ARingCCC >EigenTypes specialisation for arbitrary-precision complex (MPC) matrices
 CEigenTypes< M2::ARingRR >EigenTypes specialisation for double-precision real matrices
 CEigenTypes< M2::ARingRRR >EigenTypes specialisation for arbitrary-precision real (MPFR) matrices
 CElementArrayType-erased owning handle to a dense coefficient vector held by a ConcreteVectorArithmetic<Ring>
 Cengine_RawMatrixArray
 Cengine_RawMonomialArray
 Cengine_RawMonomialOrderingArray
 Cengine_RawMutableMatrixArray
 Cengine_RawRingElementArray
 Cengine_RawRingElementArrayArray
 CEngineMonomialEngine-side immutable monomial value type wrapping a varpower- encoded exponent vector
 CEngineObjectBase class for engine objects that are immutable once their hash has been pinned (typically once they cross over to the front end)
 Center_factory
 CEntryConfigComparator (and trivial hash) functor wired into the std::priority_queue inside PriorityQueuePolynomialHeap
 Cexponent_table
 CExponentList
 CExponentListIterator
 CExponentVector
 CF4ComputationGBComputation subclass that drives an F4GB engine instance from the engine-side computation API
 CF4GBCommutative F4 Groebner-basis driver: degree-by-degree Macaulay matrix construction plus row-reduction over a coefficient ring
 CF4MemoryBlock
 CF4MonomialLookupTableT
 CF4ResF4-style engine that computes one (level, degree) slice of a free resolution into the host SchreyerFrame
 CF4ResComputationResolutionComputation subclass that drives the F4 resolution engine (SchreyerFrame + F4Res) from the engine-side API
 CF4SPairSetS-pair scheduling queue used by F4GB: collects pairs, deduplicates them, and hands out the next degree's worth on demand
 CF4toM2InterfaceStatic-method namespace for translating between engine Matrix / vec polynomials and the F4-internal GBF4Polynomial form
 CFF_LUComputationLU decomposition over a domain using fraction-free Gaussian elimination
 CFixedPrecisionHomotopyAlgorithmTag type selecting the fixed-precision homotopy algorithm
 CFlintQQMatRAII wrapper around FLINT's fmpq_mat_t for translating dense QQ-coefficient matrices between the engine and FLINT
 CFlintZZMatRAII wrapper around FLINT's fmpz_mat_t for translating dense ZZ-coefficient matrices between the engine and FLINT
 Cfrac_elem
 CFractionFieldEngine-side fraction field of a polynomial domain R_
 CFreeAlgebraFree associative algebra over a coefficient ring: the non-commutative analogue of PolynomialRing
 CFreeAlgebraElementOwned Poly value paired with its FreeAlgebra*, providing natural operator-overloaded arithmetic
 CFreeAlgebraHeapGeobucket-style accumulator for many Poly summands in the free associative algebra
 CFreeAlgebraQuotientQuotient of a FreeAlgebra by a Groebner basis up to a fixed degree bound
 CFreeAlgebraQuotientElementOwned Poly value paired with its FreeAlgebraQuotient*, providing operator-overloaded arithmetic for debugging / scripting
 CFreeModuleEngine-side free module R^n over a Ring
 CFreeModule_symmHelper functor that builds the n-th symmetric power of a FreeModule by recursively walking multi-indices
 CFreeMonoidThe free non-commutative monoid on a set of named variables, with monomial ordering and degree / weight machinery
 CFreeMonoidLoggerStatic counter for non-commutative monomial comparisons
 CFunctionPairMaterialised (f, g) pair of BRP polynomials referenced by a Pair index record
 CGaussElimComputationGaussian elimination class. To be rewritten
 Cgb2_comp
 CGB_compA Groebner basis computation class for homogeneous input modules
 Cgb_elem
 Cgb_emitter
 Cgb_node
 CgbAThe default Groebner basis computation class
 CGBComputationBase class for Groebner basis computations
 CGBDeclaredDeclared Groebner bases
 Cgbelem
 CGBF4PolynomialCompact polynomial layout used inside the F4 GB engine
 CGBinhom_compA Groebner basis computation class for inhomogeneous input modules
 CGBKernelComputationComputes the kernel of a Schreyer-encoded GBMatrix and returns the syzygies in a Schreyer-compatible free module
 CGBMatrixgbvector-side matrix: a target FreeModule plus a list of gbvector* columns living in it
 CGBProxyHandle to a GB. Should be expunged, as full functionality isn't used
 Cgbres_compOne of the Resolution computations, based on computing step by step
 CGBRingPolynomial-ring view tuned for the inner loop of classical Buchberger Groebner-basis computations
 CGBRingPolyGBRing specialisation for ordinary commutative polynomial rings
 CGBRingSkewGBRing specialisation for skew-commutative (exterior-like) polynomial rings
 CGBRingSolvableGBRing specialisation for solvable polynomial algebras (PBW-style non-commutative rings whose relations have the form x_j * x_i = c_ij * x_i * x_j + lower-order terms)
 CGBRingWeylGBRing specialisation for Weyl algebras over a field
 CGBRingWeylZZGBRingWeyl specialisation for Weyl algebras over ZZ
 CGBSorterComparator that orders indices into the current GB array (gb_array) by each gbelem's leading monomial, in increasing order
 Cgbvector
 CgbvectorHeap
 CGBWalkerThe generic Groebner walk algorithm. Not yet working?
 CGBWeightHeuristic-weight evaluator for gbvectors, used during Groebner basis computation to drive the S-pair sugar strategy
 Cgeobucket
 CGFEngine-side finite field GF(p^n) built on top of (Z/p)[t] / f(t) for a primitive element of the resulting field
 Cgm_elem
 Cgmp_arrayZZ
 CHermiteComputationSlow Hermite normal form computation over ZZ. Replace
 Chilb_compComputation of Hilbert functions
 Chilb_step
 CHilbertControllerHilbert-function-driven early termination helper used by F4GB to skip degrees the user-supplied Hilbert series predicts hold no new basis elements
 Chm_elem
 CHomotopyAbstract base for the predictor-corrector path-tracker hierarchy
 CHomotopyAlgorithmTraits class mapping a coefficient ring RT to its preferred homotopy algorithm tag
 CHomotopyAlgorithm< M2::ARingCC >Selects FixedPrecisionHomotopyAlgorithm for the double-precision complex ring M2::ARingCC
 CHomotopyAlgorithm< M2::ARingCCC >Selects FixedPrecisionHomotopyAlgorithm for the arbitrary-precision complex ring M2::ARingCCC
 CHomotopyConcrete
 CHomotopyConcrete< RT, FixedPrecisionHomotopyAlgorithm >
 CIdentifierHashIdentifierHash: used to facilitate parsing of polynomials from strings and files
 Cindent
 Cint_bag
 CInterreducerInterreduces a list of gbvector*s in place so that no element's leading term divides any other element's terms
 CIntsSet
 CKBasisEnumerates a k-basis (degree-graded monomial basis) of a module, a finite module's entire basis, or the basis of a map between modules
 CLapackStatic-method namespace bridging the engine's RR / CC / RRR / CCC dense matrices and LAPACK / BLAS routines
 Clex
 CLLLoperationsStatic-method namespace for the LLL lattice-basis reduction algorithm operating on a MutableMatrix
 Clocal_elem
 CLocalRingEngine-side localisation of a polynomial ring at a prime ideal
 CLUUtil
 CM2_arrayintLength-prefixed int array, the integer counterpart of M2_string
 CM2_ArrayStringLength-prefixed array of M2_string pointers
 CM2_stringLength-prefixed byte string passed between the M2 front end and the engine
 CM2FreeAlgebraConcrete Ring wrapper around an owned FreeAlgebra (no quotient)
 CM2FreeAlgebraOrQuotientAbstract Ring subclass that lifts either a FreeAlgebra or a FreeAlgebraQuotient into the engine's Ring hierarchy
 CM2FreeAlgebraQuotientConcrete Ring wrapper around an owned FreeAlgebraQuotient (the quotient counterpart of M2FreeAlgebra)
 CM2HomotopyMutableEngineObject wrapper that owns a Homotopy via unique_ptr
 CM2PointArrayMutableEngineObject wrapper that owns a PointArray via unique_ptr
 CM2SLEvaluatorMutableEngineObject wrapper holding a raw SLEvaluator*
 CM2SLProgramMutableEngineObject wrapper that owns an SLProgram via unique_ptr
 CMapPolynomialHeapPolynomialHeap backed by a std::map<Monom, ring_elem, MonomEq>, deduplicating on insert via the map's lookup
 CMarkedGBComputation of a reduced GB w.r.t. a marked ordering
 CMarkedGB_sorterIndex comparator for sorting a MarkedGB's gb array by the lead-term ordering induced by the user-supplied marking
 CMatElementaryOps
 CMatElementaryOps< DMat< RT > >
 CMatElementaryOps< SMat< RT > >
 CMatrixEngine-side matrix: a map between two free modules, stored as a column-vector list
 CMatrixConstructorMutable builder used to assemble an immutable Matrix one column (or one term) at a time
 CMatrixSorterHelper that computes a column permutation for an engine Matrix by degree-then-monomial-order sort
 CMatrixStreamStreaming consumer that builds an engine Matrix from the mathicgb-style stream callbacks (idealBegin / appendPolynomialBegin / appendTermBegin / appendExponent / appendTermDone / appendPolynomialDone / idealDone)
 CMatrixWindowHalf-open rectangular submatrix descriptor: [begin_row, end_row) x [begin_column, end_column)
 CMemoryBlockThin RAII wrapper around memtailor::Arena providing bump-pointer array allocation with optional mutex protection
 CMGBCallbackMathicgb (mgb) callback that polls the engine's interrupt flag during a long-running GB computation
 CMinimalPrimes
 Cmo_block
 CModuleMonomMonom extended with a module component, a stored index, and a memoised hash — the value type of IntsSet and friends
 CModuleMonomDefaultConfigCurrent IntsSet configuration: exposes Hash and Eq as discrete member functors so the unordered_set can use them directly
 CModuleMonomDefaultConfigOrigLegacy IntsSet configuration that bundles hashing, equality, and a display helper into one functor object
 CModuleMonomEqEquality functor on ModuleMonom, forwarding to operator==
 CModuleMonomHashHash functor on ModuleMonom, forwarding to ModuleMonom::hash
 CModuleMonomLessThanStrict-weak-order comparator on ModuleMonom, used by IntsSet::sort to reorder the insertion-ordered mElements list
 Cmon_part
 Cmonideal_pair
 CMonoidEngine-side commutative monomial monoid: variable names, ordering, multidegree machinery, and monomial encoding/decoding
 CMonomNon-owning view onto a [length, degree, v1, v2, ..., vn] packed monomial in some externally managed buffer
 Cmonom_int_list
 CMonomEqStrict comparator on Monoms under a FreeMonoid order: returns true exactly when the first monomial is greater than the second
 CMonomHashHash functor on Monom (or Word) suitable for std::unordered_map / std::unordered_set
 CMonomHashEqualEquality functor on Monom (or Word), the KeyEqual companion of MonomHash for std::unordered_map<Monom, ...>
 CMonomialCollectionFixedSizeInterning collection that pairs a MonomialSetFixedSize with its own MonomialMemorySpace to own monomial storage
 CMonomialCollectionVarSizeVariable-size counterpart of MonomialCollectionFixedSize: pairs a MonomialSetVarSize with its own MonomialMemorySpace
 CMonomialHashAndEqFixedSizeCombined hash + equality functor for fixed-size monomials, plugged into the std::unordered_set inside MonomialSetFixedSize
 CMonomialHashAndEqVarSizeCombined hash + equality functor for variable-size monomials, plugged into the std::unordered_set inside MonomialSetVarSize
 CMonomialHashTable
 CMonomialIdealEngine-side monomial ideal: a decision tree of Nmi_nodes storing the (typically minimal) generators by variable / exponent path
 CMonomialInfoPer-ring monomial layout / encoding helper used by F4GB
 CMonomialMemorySpaceBump-pointer arena for monomial storage, backed by a memt::Arena
 CMonomialOrderInternal compiled form of a monomial ordering, derived from a front-end MonomialOrdering by monomialOrderMake
 CMonomialOrderingFront-end-side description of a monomial ordering as a list of mon_part blocks
 CMonomialOrderingsStatic-method namespace of constructors for the front-end MonomialOrdering value type
 CMonomialOrderMatrixMatrix-form encoding of a MonomialOrdering used by the Groebner walk algorithm
 CMonomialSetFixedSize
 CMonomialSetVarSizeHash set of interned variable-size monomials — the variable-length counterpart of MonomialSetFixedSize
 CMonomialsIgnoringComponentMonHashTable trait for packed_monomials that fold all components together (used when only the underlying monomial matters)
 CMonomialSorterObjectStrict-weak comparator on integer indices into a std::vector<int*> of monomials, used by the resolution code to sort columns
 CMonomialsWithComponentMonHashTable trait for packed_monomials that include the component coordinate in equality
 CMonomialTableIndexed table of monomials with fast "find a divisor" lookup, keyed by a free integer val per entry
 CMonomialTableZZMonomialTable analogue for monomials carrying a ZZ coefficient
 CMonomSort
 Cmontable_sorter_ZZ
 CMutableComplexSequence of MutableMatrix differentials representing an in-progress chain complex, used for engine-side minimisation / pruning
 CMutableEngineObjectBase class for engine objects that may mutate, so their hash must be identity-based rather than content-based
 CMutableMat
 CMutableMatrixAbstract base class for mutable matrices over an arbitrary engine Ring, the in-place counterpart of the immutable Matrix
 CMyIdealConsumerFrobby::IdealConsumer adapter that collects Frobby's output monomials into an engine MonomialIdeal
 CNaiveDedupPolynomialHeap
 CNaiveDedupQueueConfigurationVariant of NaiveQueueConfiguration with deduplication enabled: deduplicate(a, b) sums the coefficients of two equal monomials
 CNaivePolynomialHeap
 CNaiveQueueConfigurationmathic::Geobucket configuration whose Entry is a (Monom, ring_elem) pair compared by the FreeMonoid order on the monomial component
 CNCBasisNon-commutative analogue of KBasis: enumerates basis monomials of a FreeAlgebra quotient up to a degree / length bound
 CNCF4Non-commutative F4 Groebner-basis driver: builds a per-degree Macaulay matrix from overlaps and reduces it in bulk
 CNCGroebnerOne-overlap-at-a-time Groebner basis driver for the free associative algebra (the "Naive" companion to the F4-style NCF4)
 CNCResComputationResolutionComputation subclass that builds a free resolution over a FreeAlgebraQuotient (non-commutative)
 CNmi_nodeInternal tree node of the MonomialIdeal decision tree
 CNtermSingly linked-list node carrying one term of a polynomial-ring element
 Cour_gc_cleanup
 Cour_new_delete
 COurNodeScratch task descriptor used by the standalone TBB dependency-graph example
 COurQueueConfigurationExperimental mathic::Geobucket configuration whose Entry is an int — a placeholder used by makeQueue() to exercise the geobucket machinery without involving real monomials
 COurQueueConfiguration1Variant of OurQueueConfiguration with deduplication enabled, used by makeQueue1()
 COverlapTablePer-degree FIFO queue of pending overlaps for the NC Groebner basis driver to process
 CPairS-pair record for the Franzi boolean Groebner basis algorithm
 CPairRange
 Cparsing_error
 Cpart_elem
 Cpartition_table
 CPathTrackerNumerical homotopy-continuation path tracker for systems of polynomial equations
 CPfaffianComputationComputation of pfaffians of a skew symmetric matrix
 CPointArrayContainer of numerical points equipped with an $\varepsilon$-tolerance and a random weight vector used to bucket approximately equal points
 CPointsComputation
 CPOLYPairs a gbvector with its evolving syzygy gbvector
 Cpolyheap
 CPolynomial
 CPolynomialHeapAbstract interface for accumulating a polynomial as a sum of (coeff, left * poly * right) contributions in the free algebra
 CPolynomialRingAbstract base for the engine's polynomial-ring hierarchy
 CPolyRingConcrete PolyRingFlat subclass implementing ordinary commutative polynomial rings K[x_1, ..., x_n] with a generic coefficient ring K and monoid M
 CPolyRingFlatPolynomialRing subclass whose elements are represented as a single flat Nterm* linked list (no fraction / quotient wrapper)
 CPolyRingQuotientPolyRingFlat subclass for quotients R / I of a polynomial ring by an ideal
 Cpre_spair
 CPreSPairSorterComparator that orders pre_spair* pointers by the quot varpower monomial of each pre-S-pair
 CPriorityQueuePolynomialHeapPolynomialHeap backed by a std::priority_queue of (Monom, ring_elem) entries, with deduplication done lazily on lead-term extraction
 CQRingInfoBookkeeping helper holding the defining ideal of a polynomial-ring quotient R / I in the two representations the engine reduces against
 CQRingInfo_fieldQRingInfo partial specialisation that adds the field-coefficient reduction tables: a MonomialIdeal for divisibility queries and a MonomialTable indexed by quotient_ideal slot
 CQRingInfo_field_basicQRingInfo_field specialisation for basic-field coefficients (everything except QQ)
 CQRingInfo_field_QQQRingInfo_field specialisation for QQ coefficients, which need denominator tracking through reductions
 CQRingInfo_ZZQRingInfo specialisation for quotients of polynomial rings over ZZ
 CQuickSorter
 CRange
 CReducedGBBase class for reduced Groebner basis computation
 CReducedGB_FieldComputation of a reduced GB w.r.t. a term order, over a field
 CReducedGB_Field_LocalComputation of a reduced GB w.r.t. a local order, over a field
 CReducedGB_Field_Local_sorterIndex comparator used to permute ReducedGB_Field_Local's gb array into canonical reduced-GB order for the local-ring path
 CReducedGB_Field_sorterIndex comparator used to permute ReducedGB_Field's gb array into canonical reduced-GB order over a field
 CReducedGB_ZZComputation of a reduced GB w.r.t. a term order, over ZZ
 CReducedGB_ZZ_sorterIndex comparator used to permute ReducedGB_ZZ's gb array into canonical reduced-GB order over ZZ
 CRElement
 Cres2_compOne of the Resolution computations, based on Schreyer and Lascala
 Cres2_level
 Cres2_pair
 Cres2_poly
 Cres2term
 Cres_compOne of the Resolution computations, based on Schreyer and Lascala
 Cres_degree
 Cres_level
 Cres_pair
 Cres_poly
 CResF4MonomialLookupTableT
 CResF4toM2InterfaceStatic-method namespace bridging engine Matrix / vec values and the resolution engine's ResPolynomial representation
 CResMemoryBlock
 CResMonoidDenseDense-format ResMonoid implementation: monomials laid out as fixed-width exponent vectors
 CResMonoidSparseSparse / varpower-format ResMonoid implementation: monomials laid out as length-prefixed lists of (variable, exponent) pairs
 CResMonomialsIgnoringComponentMonHashTable trait for res_packed_monomials with the component coordinate folded out
 CResMonomialSorterSorter that orders res_packed_monomials by their total (Schreyer) monomial, with a stable tiebreaker derived from input order
 CResMonomialsWithComponentMonHashTable trait for the resolution engine's res_packed_monomials, with components included
 CResolutionComputationBase class for free resolution computation classes
 CResPolynomialPolynomial type used by the F4 resolution engine: parallel coefficient vector and concatenated monomial buffer
 CResPolynomialConstructorBuilder that accumulates terms into a ResPolynomial and finalises the layout in one shot via setPoly
 CResPolynomialIteratorForward iterator over the terms of a ResPolynomial
 CResPolyRingThe polynomial-ring view the F4 resolution engine reduces against: coefficient arithmetic plus the engine-specific ResMonoid
 CResSchreyerOrderPer-level Schreyer-order data attached to a SchreyerFrame::Level
 Cresterm
 CRingXxx xxx xxx
 Cring_elem
 CRingElementFront-end-visible "ring element" value: an engine ring_elem paired with the Ring* that gives it meaning
 CRingElementGenerator
 CRingMapEngine-side ring homomorphism: stores, for each source-ring variable, the target-ring element it maps to
 CRingZZEngine-side ring of integers, backed by GMP mpz_ptr elements
 Crow_elem
 Cs_pair
 Cs_pair_heap
 CsagbiHelper routines for computing Sagbi bases. Not currently functional?
 CSchreyerFrameState container for the in-progress free resolution built by the F4 resolution engine
 CSchreyerOrderPer-component tie-breaker data for a Schreyer monomial order on a FreeModule
 CSchreyerOrder_symmHelper functor that builds the n-th symmetric power of a SchreyerOrder by walking multi-indices
 Cschur_poly
 Cschur_poly_heap
 Cschur_poly_iterator
 CSchurRingPolyRing subclass implementing the Schur (symmetric-function) ring whose monomials are partitions and whose multiplication is the Littlewood-Richardson rule
 CSchurRing2Refactored Schur (symmetric-function) ring whose elements are schur_poly sums of partitions over a configurable coefficient ring
 CSchurSnRingSchurRing2 subclass implementing the symmetric-group character ring (the "Schur ring of `S_n`"), with multiplication given by inner-product convolution rather than Littlewood-Richardson
 CSkewMultiplicationSign-rule helper used by every ring that has a skew-commutative subset of variables (exterior factor, full skew ring, ...)
 CSkewPolynomialRingPolyRing subclass for skew-commutative (exterior-style) polynomial rings: the listed skewvars anticommute among themselves and square to zero
 Cslab
 CSLEvaluatorAbstract base for the SLP evaluator hierarchy
 CSLEvaluatorConcrete
 CSLP
 CSLProgramA straight-line program: a directed acyclic graph of arithmetic gates over a fixed list of inputs and constants
 CSMat
 CSolutionOne numerical solution produced by a PathTracker run, with the full per-path diagnostic record
 CSolvableAlgebraPolyRing subclass for solvable polynomial algebras (PBW-type non-commutative rings where each pair of non-commuting variables satisfies a relation of the form x_j x_i = c_ij x_i x_j + lower)
 Csorter
 Cspair
 CSPairCompareComparator on indices into an spair table, ordering by sugar degree then by the larger of the two parent indices
 Csparse_row
 CSPolySorterComparator on gbA::spair* used by the default Groebner basis driver to order its S-pair queue
 Cstash
 CStatsAllocator
 CStopConditionsBundle of optional early-termination knobs the front end can attach to a long-running Computation
 CStraightLineProgram
 CSubMatrix
 CSubsetsBijective integer encoding of q-subsets of {0, ..., n-1} via binomial(a_0, 1) + binomial(a_1, 2) + ... + binomial(a_{q-1}, q)
 CSuffixTreeGeneralised suffix tree alternative to WordTable for indexing non-commutative monomials
 CSuffixTreeNodeOne node of a generalised suffix tree built over the inserted non-commutative monomial patterns
 CSumCollectorAbstract incremental accumulator that builds a ring_elem from many add(f) calls
 CSumCollectorDefaultGeneric SumCollector that accumulates into a single ring_elem via repeated Ring::add_to
 CSumCollectorFreeAlgebraHeapSumCollector adapter that funnels engine-side ring_elem adds into a FreeAlgebraHeap
 CSumCollectorPolyHeapSumCollector implementation that funnels engine-side ring_elem additions through a polyheap (geobucket)
 CSymmMatrixHelper that builds the p-th symmetric power of a 1-by-n matrix
 CTClassic separate-chaining hash table used by the engine's low-level C code paths
 Ctableau
 Ctableau2
 CTermIterator
 CTowerRing subclass for tower polynomial rings (Z/p)[x_0][x_1]...[x_{n-1}] modulo a chain of algebraic extensions
 CTowerEvaluatorDPolyTraverser subclass that evaluates a tower polynomial under a RingMap
 CTowerPolynomialHeap-allocated node of a tower polynomial: a dense degree-indexed coefficient array that recurses through levels
 CTrivialHomotopyAlgorithmTag type selecting the no-op homotopy algorithm
 CTrivialPolynomialHeapBaseline PolynomialHeap implementation that simply accumulates the pending sum in a single Poly and walks it with an iterator
 CVariablePrecisionHomotopyAlgorithmTag type selecting the variable-precision homotopy algorithm
 Cvec
 CvecHeap
 CVectorArithmeticRuntime dispatcher that hides the concrete coefficient ring behind a std::variant of ConcreteVectorArithmetic<Ring>* pointers
 CVectorArithmeticStatsLightweight counter attached to a ConcreteVectorArithmetic<Ring> for tracking how many coefficient additions a reduction performed
 CWeylAlgebraPolyRing subclass for Weyl algebras: polynomial rings with the [d_i, x_i] = 1 derivative-variable commutation relations
 CWordNon-owning view of a non-commutative word: [begin, end) of int variable indices
 CWordTableIndex of Words (non-commutative monomials) with subword, prefix/suffix, and overlap lookup used by the NC Groebner code
 CWordWithDataWord plus its ecart degree and heft degree — the value type WordWithDataTable stores
 CWordWithDataTableVariant of WordTable where each stored monomial carries an additional ecart-degree datum that gates subword matches
 CZ_modEngine-side Z/p ring for small primes (p < 32767), using a discrete-log (Zech) representation
 CZipIterator