Macaulay2 Engine
Loading...
Searching...
No Matches
Computation Class Referenceabstract

Abstract base for long-running, resumable engine computations (GBComputation, ResolutionComputation, MutableComplex, GBKernelComputation, ...). More...

#include <comp.hpp>

Inheritance diagram for Computation:
MutableEngineObject our_gc_cleanup our_new_delete GBComputation GBKernelComputation ResolutionComputation F4Computation GBDeclared GBProxy GBWalker GB_comp GBinhom_comp GaussElimComputation HermiteComputation ReducedGB binomialGB_comp gbA newf4::GBF4Interface F4ResComputation NCResComputation gbres_comp res2_comp res_comp

Public Member Functions

Computationset_stop_conditions (M2_bool always_stop, M2_arrayint degree_limit, int basis_element_limit, int syzygy_limit, int pair_limit, int codim_limit, int subring_limit, M2_bool just_min_gens, M2_arrayint length_limit)
enum ComputationStatusCode status () const
virtual int complete_thru_degree () const =0
virtual void start_computation ()=0
virtual GBComputationcast_to_GBComputation ()
virtual ResolutionComputationcast_to_ResolutionComputation ()
virtual void text_out (buffer &o) const
virtual void show () const
Public Member Functions inherited from MutableEngineObject
 MutableEngineObject ()
virtual ~MutableEngineObject ()
unsigned int hash () const
Public Member Functions inherited from our_gc_cleanup
 our_gc_cleanup ()
virtual ~our_gc_cleanup ()

Protected Member Functions

 Computation ()
enum ComputationStatusCode set_status (enum ComputationStatusCode)
virtual bool stop_conditions_ok ()=0
virtual ~Computation ()

Protected Attributes

StopConditions stop_

Private Attributes

enum ComputationStatusCode computation_status

Additional Inherited Members

Static Public Member Functions inherited from our_new_delete
static void * operator new (size_t size)
static void * operator new[] (size_t size)
static void operator delete (void *obj)
static void operator delete[] (void *obj)
static void * operator new (size_t size, void *existing_memory)
static void * operator new[] (size_t size, void *existing_memory)
static void operator delete (void *obj, void *existing_memory)
static void operator delete[] (void *obj, void *existing_memory)

Detailed Description

Abstract base for long-running, resumable engine computations (GBComputation, ResolutionComputation, MutableComplex, GBKernelComputation, ...).

Note
AI-generated documentation. Verify against the source before relying on it.

Manages a ComputationStatusCode state machine plus a StopConditions record so callers can ask for partial progress (degree limit, basis-element limit, syzygy limit, wall-clock deadline, ...) without losing what has already been computed. Subclasses implement stop_conditions_ok() to vet the request and start_computation() to do the work; set_status() is the single chokepoint that updates the visible state.

Definition at line 69 of file comp.hpp.


The documentation for this class was generated from the following files: