documentation:master:ideal

Differences

This shows you the differences between two versions of the page.


documentation:master:ideal [2023/01/27 16:59] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== application ideal ======
 + This application allows to define ideals and enables other applications to use these. For example we can compute the tropical variety of an ideal via gfan in the application 'tropical'. Using this application with the bundled extension Singular adds a lot more commutative algebra power.
 +
 +imports from:
 +    * application [[.:common|common]]
 +
 +===== Objects =====
 +  ** ''[[.:ideal:Groebner |Groebner]]'':\\  The Groebner object collects information about an ideal depending on the monomial ordering of the ambient ring.
 +  ** ''[[.:ideal:Ideal |Ideal]]'':\\  An ideal in a polynomial ring.
 +  ** ''[[.:ideal:SlackIdeal |SlackIdeal]]'':\\  The type SlackIdeal is a thin wrapper around ''[[.:ideal:Ideal |Ideal]]'' that allows avoiding saturation. The current algorithm for computing the ''[[.:polytope:Polytope#SLACK_IDEAL |SLACK_IDEAL]]'' of a ''[[.:polytope:Polytope |Polytope]]'' first computes an ideal whose saturation is the actual slack ideal. This last step is very expensive and probably necessary for many applications. Hence the SlackIdeal contains a second ideal ''[[.:ideal:SlackIdeal#NON_SATURATED |NON_SATURATED]]'' as a property and the actual saturation step is only done once one asks for the ''[[.:ideal:Ideal#GENERATORS |GENERATORS]]'' of the SlackIdeal.
 +
 +===== Functions =====
 +
 +==== Producing an ideal from scratch ====
 + With these clients you can create ideals belonging to various parameterized families which occur frequently in comumutative algebra.
 +----
 +{{anchor:bracket_ideal_pluecker:}}
 +  ?  **''bracket_ideal_pluecker([[.:matroid:Matroid |Matroid]] m)''**
 +  :: Generates the ideal of all Grassmann-Plücker relations of the given matroid. For the algorithm see Sturmfels: Algorithms in invariant theory, Springer, 2nd ed., 2008
 +    ? Parameters:
 +    :: ''[[.:matroid:Matroid |Matroid]]'' ''m''
 +    ? Returns:
 +    :''[[.:ideal:Ideal |Ideal]]''
 +
 +
 +----
 +{{anchor:pluecker_ideal:}}
 +  ?  **''pluecker_ideal([[.:common#Int |Int]] d, [[.:common#Int |Int]] n)''**
 +  :: Generates the ideal of all Grassmann-Plücker relations of dxd minors of an dxn matrix. For the algorithm see Sturmfels: Algorithms in invariant theory, Springer, 2nd ed., 2008
 +    ? Parameters:
 +    :: ''[[.:common#Int |Int]]'' ''d''
 +    :: ''[[.:common#Int |Int]]'' ''n''
 +    ? Returns:
 +    :''[[.:ideal:Ideal |Ideal]]''
 +
 +
 +----
 +
 +==== Singular interface ====
 + Functions, methods and objects and attached from/to Singular.
 +----
 +{{anchor:load_singular_library:}}
 +  ?  **''load_singular_library([[.:common#String |String]] s)''**
 +  :: Loads a SINGULAR library
 +    ? Parameters:
 +    :: ''[[.:common#String |String]]'' ''s''
 +    ? from extension:
 +    : [[:external_software|bundled:singular]]
 +
 +
 +----
 +{{anchor:singular_eval:}}
 +  ?  **''singular_eval([[.:common#String |String]] s)''**
 +  :: Executes given string with Singular
 +    ? Parameters:
 +    :: ''[[.:common#String |String]]'' ''s''
 +    ? from extension:
 +    : [[:external_software|bundled:singular]]
 +
 +
 +----
 +{{anchor:singular_get_var:}}
 +  ?  **''singular_get_var([[.:common#String |String]] s)''**
 +  :: Retrieves a variable from 'Singular'
 +    ? Parameters:
 +    :: ''[[.:common#String |String]]'' ''s'': variable name
 +    ? Returns:
 +    :''[[.:common#List |List]]''
 +    ? from extension:
 +    : [[:external_software|bundled:singular]]
 +
 +
 +----
 +{{anchor:slack_ideal_non_saturated:}}
 +  ?  **''slack_ideal_non_saturated''**
 +  :: Computes the non-saturated slack ideal of a polytope, as described in > João Gouveia, Antonio Macchia, Rekha R. Thomas, Amy Wiebe: > The Slack Realization Space of a Polytope > (https://arxiv.org/abs/1708.04739)
 +    ? from extension:
 +    : [[:external_software|bundled:singular]]
 +
 +
 +----
 +
 +===== Small Object Types =====
 +
 +==== Singular interface ====
 + Functions, methods and objects and attached from/to Singular.
 +----
 +{{anchor:singularideal:}}
 +  ?  **''SingularIdeal''**
 +  :: An intermediate object wrapping the ideal on the Singular side and providing its methods.
 +    ? from extension:
 +    : [[:external_software|bundled:singular]]
 +
 +
 +----