axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] MonoidWithZero


From: Bill Page
Subject: Re: [Axiom-developer] MonoidWithZero
Date: Mon, 23 Jul 2007 13:02:18 -0400

On 7/23/07, Franz Lehner wrote:

> that's actually not true. MRCAT.spad is generated, but now we have to make
> sure it is compiled before MRING (?).
apparently appending a line in
fricas/src/algebra/boo-cat.input
does the trick. At least both MRCAT.NRLIB and MRING.NRLIB did compile and
it didn't stop yet.


Yes, apparently that is exactly what was needed. Good work! I can
confirm that this compiles with FriCAS revision 25 under MSYS/MinGW on
my Windows XP system.

You might also want to add MRCAT to exposed.lisp.pamphlet. The
following is a summary of the patches on my system. Would you be
willing to submit these patches to Waldek for inclusion in FriCAS?

-------------
address@hidden ~/fricas/src/algebra
$ svn diff exposed.lsp.pamphlet
Index: exposed.lsp.pamphlet
===================================================================
--- exposed.lsp.pamphlet        (revision 25)
+++ exposed.lsp.pamphlet        (working copy)
@@ -625,6 +625,7 @@
  (|Monad| . MONAD)
  (|MonadWithUnit| . MONADWU)
  (|Monoid| . MONOID)
+  (|MonoidRingCategory| . MRCAT)
  (|MonogenicAlgebra| . MONOGEN)
  (|MonogenicLinearOperator| . MLO)
  (|MultiDictionary| . MDAGG)

address@hidden ~/fricas/src/algebra
$ svn diff boo-cat.input
Index: boo-cat.input
===================================================================
--- boo-cat.input       (revision 25)
+++ boo-cat.input       (working copy)
@@ -75,6 +75,7 @@
)compile "LSAGG.spad"
)compile "TBAGG.spad"
)compile "ALAGG.spad"
+)compile "MRCAT.spad"
)compile "AMR.spad"
)compile "ARR2CAT.spad"
)compile "BRAGG.spad"

address@hidden ~/fricas/src/algebra
$ svn diff Makefile.pamphlet
Index: Makefile.pamphlet
===================================================================
--- Makefile.pamphlet   (revision 25)
+++ Makefile.pamphlet   (working copy)
@@ -271,7 +271,7 @@
     MKUCFUNC MLIFT MLO MMAP MODFIELD MODMONOM \
     MODMON MODOP MODRING MODULE MOEBIUS MONAD \
     MONADWU MONOGEN MONOID MONOTOOL MPC2 MPC3 \
-     MPCPF MPOLY MPRFF MRATFAC MRF2 MRING \
+     MPCPF MPOLY MPRFF MRATFAC MRCAT MRF2 MRING \
     MSETAGG MSET MSYSCMD MTHING MTSCAT MULTFACT \
     MULTSQFR NAALG NARNG \
     NASRING NCEP NCNTFRAC NCODIV NFINTBAS \
@@ -366,7 +366,7 @@
        FDIVCAT FFCAT FILECAT MONAD NARNG NAALG FINAALG LIECAT FLALG \
        FORTCAT FMC FMCAT FMFUN FMTC FNCAT FORTFN REAL RNS FPS FRNAALG \
        SETAGG FSAGG FVC FVFUN GRMOD GRALG IDPC OINTDOM INS INTCAT LALG \
-        LFCAT OREPCAT LODOCAT LZSTAGG MATCAT MDAGG MLO MONADWU MSETAGG \
+        LFCAT OREPCAT LODOCAT LZSTAGG MATCAT MDAGG MLO MONADWU MRCAT MSETAGG \
        PSCAT MTSCAT NASRING PSETCAT TSETCAT RSETCAT NTSCAT OC \
        PRQAGG OMSAGG ORDFIN ORDMON PADICCT PERMCAT \
        PPCURVE PSCURVE VECTCAT PTCAT QFCAT QUATCAT RCFIELD RMATCAT \

address@hidden ~/fricas/src/algebra
$ svn diff boo-cat.input
Index: boo-cat.input
===================================================================
--- boo-cat.input       (revision 25)
+++ boo-cat.input       (working copy)
@@ -75,6 +75,7 @@
)compile "LSAGG.spad"
)compile "TBAGG.spad"
)compile "ALAGG.spad"
+)compile "MRCAT.spad"
)compile "AMR.spad"
)compile "ARR2CAT.spad"
)compile "BRAGG.spad"

address@hidden ~/fricas/src/algebra
$ svn status
?      mring.spad.pamphlet.diff
M      boo-cat.input
M      Makefile.pamphlet
M      exposed.lsp.pamphlet
M      Makefile.in
M      mring.spad.pamphlet

address@hidden ~/fricas/src/algebra
$ svn diff Makefile.pamphlet
Index: Makefile.pamphlet
===================================================================
--- Makefile.pamphlet   (revision 25)
+++ Makefile.pamphlet   (working copy)
@@ -271,7 +271,7 @@
     MKUCFUNC MLIFT MLO MMAP MODFIELD MODMONOM \
     MODMON MODOP MODRING MODULE MOEBIUS MONAD \
     MONADWU MONOGEN MONOID MONOTOOL MPC2 MPC3 \
-     MPCPF MPOLY MPRFF MRATFAC MRF2 MRING \
+     MPCPF MPOLY MPRFF MRATFAC MRCAT MRF2 MRING \
     MSETAGG MSET MSYSCMD MTHING MTSCAT MULTFACT \
     MULTSQFR NAALG NARNG \
     NASRING NCEP NCNTFRAC NCODIV NFINTBAS \
@@ -366,7 +366,7 @@
        FDIVCAT FFCAT FILECAT MONAD NARNG NAALG FINAALG LIECAT FLALG \
        FORTCAT FMC FMCAT FMFUN FMTC FNCAT FORTFN REAL RNS FPS FRNAALG \
        SETAGG FSAGG FVC FVFUN GRMOD GRALG IDPC OINTDOM INS INTCAT LALG \
-        LFCAT OREPCAT LODOCAT LZSTAGG MATCAT MDAGG MLO MONADWU MSETAGG \
+        LFCAT OREPCAT LODOCAT LZSTAGG MATCAT MDAGG MLO MONADWU MRCAT MSETAGG \
        PSCAT MTSCAT NASRING PSETCAT TSETCAT RSETCAT NTSCAT OC \
        PRQAGG OMSAGG ORDFIN ORDMON PADICCT PERMCAT \
        PPCURVE PSCURVE VECTCAT PTCAT QFCAT QUATCAT RCFIELD RMATCAT \

address@hidden ~/fricas/src/algebra
$ svn diff mring.spad.pamphlet
Index: mring.spad.pamphlet
===================================================================
--- mring.spad.pamphlet (revision 25)
+++ mring.spad.pamphlet (working copy)
@@ -9,12 +9,12 @@
\eject
\tableofcontents
\eject
-\section{domain MRING MonoidRing}
-<<domain MRING MonoidRing>>=
-)abbrev domain MRING MonoidRing
+\section{category MRCAT MonoidRingCategory}
+<<category MRCAT MonoidRingCategory>>=
+)abbrev category MRCAT MonoidRingCategory
++ Authors: Stephan M. Watt; revised by Johannes Grabmeier
++ Date Created: January 1986
-++ Date Last Updated: 14 December 1995, Mike Dewar
+++ Date Last Updated: 22 July 2007, Franz Lehner
++ Basic Operations: *, +, monomials, coefficients
++ Related Constructors: Polynomial
++ Also See:
@@ -23,26 +23,13 @@
++  indeterminates
++ References:
++ Description:
-++  \spadtype{MonoidRing}(R,M), implements the algebra
+++  \spadtype{MonoidRingCategory}(R,M) defines the algebra
++  of all maps from the monoid M to the commutative ring R with
++  finite support.
-++  Multiplication of two maps f and g is defined
-++  to map an element c of M to the (convolution) sum over {\em f(a)g(b)}
-++  such that {\em ab = c}. Thus M can be identified with a canonical
-++  basis and the maps can also be considered as formal linear combinations
-++  of the elements in M. Scalar multiples of a basis element are called
-++  monomials. A prominent example is the class of polynomials
-++  where the monoid is a direct product of the natural numbers
-++  with pointwise addition. When M is
-++  \spadtype{FreeMonoid Symbol}, one gets polynomials
-++  in infinitely many non-commuting variables. Another application
-++  area is representation theory of finite groups G, where modules
-++  over \spadtype{MonoidRing}(R,G) are studied.
-
-MonoidRing(R: Ring, M: Monoid): MRcategory == MRdefinition where
+MonoidRingCategory(R: Ring, M: Monoid):Category == MRCdefinition where
    Term ==> Record(coef: R, monom: M)

-    MRcategory ==> Join(Ring, RetractableTo M, RetractableTo R) with
+    MRCdefinition == Join(Ring, RetractableTo M, RetractableTo R) with
        monomial         : (R, M) -> %
          ++ monomial(r,m) creates a scalar multiple of the basis element m.
        coefficient : (%, M) -> R
@@ -82,6 +69,38 @@
            ++ among all those with non-zero coefficients.
          reductum          : % -> %
            ++ reductum(f) is f minus its leading monomial.
+@
+\section{domain MRING MonoidRing}
+<<domain MRING MonoidRing>>=
+)abbrev domain MRING MonoidRing
+++ Authors: Stephan M. Watt; revised by Johannes Grabmeier
+++ Date Created: January 1986
+++ Date Last Updated: 14 December 1995, Mike Dewar
+++ Basic Operations: *, +, monomials, coefficients
+++ Related Constructors: Polynomial
+++ Also See:
+++ AMS Classifications:
+++ Keywords: monoid ring, group ring, polynomials in non-commuting
+++  indeterminates
+++ References:
+++ Description:
+++  \spadtype{MonoidRing}(R,M), implements the algebra
+++  of all maps from the monoid M to the commutative ring R with
+++  finite support.
+++  Multiplication of two maps f and g is defined
+++  to map an element c of M to the (convolution) sum over {\em f(a)g(b)}
+++  such that {\em ab = c}. Thus M can be identified with a canonical
+++  basis and the maps can also be considered as formal linear combinations
+++  of the elements in M. Scalar multiples of a basis element are called
+++  monomials. A prominent example is the class of polynomials
+++  where the monoid is a direct product of the natural numbers
+++  with pointwise addition. When M is
+++  \spadtype{FreeMonoid Symbol}, one gets polynomials
+++  in infinitely many non-commuting variables. Another application
+++  area is representation theory of finite groups G, where modules
+++  over \spadtype{MonoidRing}(R,G) are studied.
+MonoidRing(R: Ring, M: Monoid): MonoidRingCategory(R,M) == MRdefinition where
+    Term ==> Record(coef: R, monom: M)

    MRdefinition ==> add
        Ex ==> OutputForm
@@ -395,6 +414,7 @@
<<*>>=
<<license>>

+<<category MRCAT MonoidRingCategory>>
<<domain MRING MonoidRing>>
<<package MRF2 MonoidRingFunctions2>>
@

----------------

Regards,
Bill Page.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]