/usr/share/doc/libghc-maths-doc/html/Math-Algebras-Commutative.html is in libghc-maths-doc 0.4.8-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Math.Algebras.Commutative</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Math-Algebras-Commutative.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Math-Algebras-Commutative.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">HaskellForMaths-0.4.8: Combinatorics, group theory, commutative algebra, non-commutative algebra</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Math.Algebras.Commutative</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>A module defining the algebra of commutative polynomials over a field k.</p><p>Most users should probably use Math.CommutativeAlgebra.Polynomial instead, which is basically the same thing
but more fully-featured. This module will probably be deprecated at some point, but remains for now because
it has a simpler implementation which may be more helpful for people wanting to understand the code.</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span> <a href="#t:GlexMonomial">GlexMonomial</a> v = <a href="#v:Glex">Glex</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> [(v, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>)]</li><li class="src short"><span class="keyword">type</span> <a href="#t:GlexPoly">GlexPoly</a> k v = <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</li><li class="src short"><a href="#v:glexVar">glexVar</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> k => v -> <a href="Math-Algebras-Commutative.html#t:GlexPoly">GlexPoly</a> k v</li><li class="src short"><span class="keyword">class</span> <a href="#t:Monomial">Monomial</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:var">var</a> :: v -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> <a href="Math-Algebra-Field-Base.html#t:Q">Q</a> (m v)</li><li><a href="#v:powers">powers</a> :: m v -> [(v, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>)]</li></ul></li><li class="src short"><a href="#v:bind">bind</a> :: (<a href="Math-Algebras-Commutative.html#t:Monomial">Monomial</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> b, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> b, <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> k b) => <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k (m v) -> (v -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b) -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b</li><li class="src short"><a href="#v:lt">lt</a> :: <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t t1 -> (t1, t)</li><li class="src short"><span class="keyword">class</span> <a href="#t:DivisionBasis">DivisionBasis</a> b <span class="keyword">where</span><ul class="subs"><li><a href="#v:dividesB">dividesB</a> :: b -> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:divB">divB</a> :: b -> b -> b</li></ul></li><li class="src short"><a href="#v:dividesT">dividesT</a> :: <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> b => (b, t) -> (b, t1) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:divT">divT</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Fractional">Fractional</a> t1, <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> t) => (t, t1) -> (t, t1) -> (t, t1)</li><li class="src short"><a href="#v:quotRemMP">quotRemMP</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> t, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Fractional">Fractional</a> t, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> b, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> b, <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> t b, <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> b) => <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b -> [<a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b] -> ([<a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b], <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b)</li><li class="src short"><a href="#v:-37--37-">(%%)</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Fractional">Fractional</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> b, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> b, <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> k b, <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> b) => <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b -> [<a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b] -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:GlexMonomial" class="def">GlexMonomial</a> v <a href="src/Math-Algebras-Commutative.html#GlexMonomial" class="link">Source</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:Glex" class="def">Glex</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> [(v, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>)]</td><td class="doc empty"> </td></tr></table></div><div class="subs instances"><p id="control.i:GlexMonomial" class="caption collapser" onclick="toggleSection('i:GlexMonomial')">Instances</p><div id="section.i:GlexMonomial" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Math-Algebras-Commutative.html#t:Monomial">Monomial</a> <a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a></span> <a href="src/Math-Algebras-Commutative.html#line-97" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> k) => <a href="Math-Algebras-Structures.html#t:Coalgebra">Coalgebra</a> k (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-68" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> v) => <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> k (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-60" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> v => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-22" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> v => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-27" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> v => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-30" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> v => <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-138" class="link">Source</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:GlexPoly" class="def">GlexPoly</a> k v = <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v) <a href="src/Math-Algebras-Commutative.html#GlexPoly" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:glexVar" class="def">glexVar</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> k => v -> <a href="Math-Algebras-Commutative.html#t:GlexPoly">GlexPoly</a> k v <a href="src/Math-Algebras-Commutative.html#glexVar" class="link">Source</a></p><div class="doc"><p>glexVar creates a variable in the algebra of commutative polynomials with Glex term ordering.
For example, the following code creates variables called x, y and z:</p><pre>[x,y,z] = map glexVar ["x","y","z"] :: GlexPoly Q String</pre></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Monomial" class="def">Monomial</a> m <span class="keyword">where</span> <a href="src/Math-Algebras-Commutative.html#Monomial" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:var" class="def">var</a> :: v -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> <a href="Math-Algebra-Field-Base.html#t:Q">Q</a> (m v) <a href="src/Math-Algebras-Commutative.html#var" class="link">Source</a></p><p class="src"><a name="v:powers" class="def">powers</a> :: m v -> [(v, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>)] <a href="src/Math-Algebras-Commutative.html#powers" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:Monomial" class="caption collapser" onclick="toggleSection('i:Monomial')">Instances</p><div id="section.i:Monomial" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Math-Algebras-Commutative.html#t:Monomial">Monomial</a> <a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a></span> <a href="src/Math-Algebras-Commutative.html#line-97" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Math-Algebras-Commutative.html#t:Monomial">Monomial</a> <a href="Math-Algebras-AffinePlane.html#t:SL2">SL2</a></span> <a href="src/Math-Algebras-Commutative.html#line-56" class="link">Source</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:bind" class="def">bind</a> :: (<a href="Math-Algebras-Commutative.html#t:Monomial">Monomial</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> b, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> b, <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> k b) => <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k (m v) -> (v -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b) -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b <a href="src/Math-Algebras-Commutative.html#bind" class="link">Source</a></p><div class="doc"><p>In effect, we have (Num k, Monomial m) => Monad (v -> Vect k (m v)), with return = var, and (>>=) = bind.
However, we can't express this directly in Haskell, firstly because of the Ord b constraint,
secondly because Haskell doesn't support type functions.</p></div></div><div class="top"><p class="src"><a name="v:lt" class="def">lt</a> :: <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t t1 -> (t1, t) <a href="src/Math-Algebras-Commutative.html#lt" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:DivisionBasis" class="def">DivisionBasis</a> b <span class="keyword">where</span> <a href="src/Math-Algebras-Commutative.html#DivisionBasis" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:dividesB" class="def">dividesB</a> :: b -> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Math-Algebras-Commutative.html#dividesB" class="link">Source</a></p><p class="src"><a name="v:divB" class="def">divB</a> :: b -> b -> b <a href="src/Math-Algebras-Commutative.html#divB" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:DivisionBasis" class="caption collapser" onclick="toggleSection('i:DivisionBasis')">Instances</p><div id="section.i:DivisionBasis" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> v => <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> (<a href="Math-Algebras-Commutative.html#t:GlexMonomial">GlexMonomial</a> v)</span> <a href="src/Math-Algebras-Commutative.html#line-138" class="link">Source</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:dividesT" class="def">dividesT</a> :: <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> b => (b, t) -> (b, t1) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Math-Algebras-Commutative.html#dividesT" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:divT" class="def">divT</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Fractional">Fractional</a> t1, <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> t) => (t, t1) -> (t, t1) -> (t, t1) <a href="src/Math-Algebras-Commutative.html#divT" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:quotRemMP" class="def">quotRemMP</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> t, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Fractional">Fractional</a> t, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> b, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> b, <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> t b, <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> b) => <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b -> [<a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b] -> ([<a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b], <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> t b) <a href="src/Math-Algebras-Commutative.html#quotRemMP" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:-37--37-" class="def">(%%)</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Fractional">Fractional</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> b, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> b, <a href="Math-Algebras-Structures.html#t:Algebra">Algebra</a> k b, <a href="Math-Algebras-Commutative.html#t:DivisionBasis">DivisionBasis</a> b) => <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b -> [<a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b] -> <a href="Math-Algebras-VectorSpace.html#t:Vect">Vect</a> k b <span class="fixity">infixl 7</span><span class="rightedge"></span> <a href="src/Math-Algebras-Commutative.html#%25%25" class="link">Source</a></p><div class="doc"><p>(%%) reduces a polynomial with respect to a list of polynomials.</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.1</p></div></body></html>
|