diff --git a/books/bookvol10.3.pamphlet b/books/bookvol10.3.pamphlet index cf3e0a7..523b831 100644 --- a/books/bookvol10.3.pamphlet +++ b/books/bookvol10.3.pamphlet @@ -78400,17 +78400,17 @@ o )show Places \cross{PLACES}{?\~{}=?} & \cross{PLACES}{coerce} & \cross{PLACES}{create} & -\cross{PLACES}{degree} & -\cross{PLACES}{foundPlaces} \\ +\cross{PLACES}{degree} \\ +\cross{PLACES}{foundPlaces} & \cross{PLACES}{hash} & \cross{PLACES}{itsALeaf!} & \cross{PLACES}{latex} & -\cross{PLACES}{leaf?} & +\cross{PLACES}{leaf?} \\ \cross{PLACES}{localParam} & -\cross{PLACES}{reduce} \\ +\cross{PLACES}{reduce} & \cross{PLACES}{setDegree!} & \cross{PLACES}{setFoundPlacesToEmpty} & -\cross{PLACES}{setParam!} && +\cross{PLACES}{setParam!} \end{tabular} <>= @@ -78432,7 +78432,112 @@ Places(K):Exports == Implementation where <>= "PLACES" [color="#88FF44",href="bookvol10.3.pdf#nameddest=PLACES"]; "NSDPS" [color="#88FF44",href="bookvol10.3.pdf#nameddest=NSDPS"]; +"PLCS" [color="#88FF44",href="bookvol10.3.pdf#nameddest=PLCS"] "PLACES" -> "NSDPS" +"PLACES" -> "PLCS" + +@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{domain PLACESPS PlacesOverPseudoAlgebraicClosureOfFiniteField} +<>= +)set break resume +)sys rm -f PlacesOverPseudoAlgebraicClosureOfFiniteField.output +)spool PlacesOverPseudoAlgebraicClosureOfFiniteField.output +)set message test on +)set message auto off +)clear all + +--S 1 of 1 +)show PlacesOverPseudoAlgebraicClosureOfFiniteField +--R PlacesOverPseudoAlgebraicClosureOfFiniteField K: FiniteFieldCategory is a domain constructor +--R Abbreviation for PlacesOverPseudoAlgebraicClosureOfFiniteField is PLACESPS +--R This constructor is exposed in this frame. +--R Issue )edit bookvol10.3.pamphlet to see algebra source code for PLACESPS +--R +--R------------------------------- Operations -------------------------------- +--R ?*? : (Integer,%) -> Divisor % ?+? : (%,%) -> Divisor % +--R -? : % -> Divisor % ?-? : (%,%) -> Divisor % +--R ?=? : (%,%) -> Boolean coerce : % -> OutputForm +--R create : Symbol -> % degree : % -> PositiveInteger +--R foundPlaces : () -> List % hash : % -> SingleInteger +--R itsALeaf! : % -> Void latex : % -> String +--R leaf? : % -> Boolean reduce : List % -> Divisor % +--R ?~=? : (%,%) -> Boolean +--R ?+? : (%,Divisor %) -> Divisor % +--R ?+? : (Divisor %,%) -> Divisor % +--R ?-? : (%,Divisor %) -> Divisor % +--R ?-? : (Divisor %,%) -> Divisor % +--R create : List PseudoAlgebraicClosureOfFiniteField K -> % +--R ?.? : (%,Integer) -> PseudoAlgebraicClosureOfFiniteField K +--R localParam : % -> List NeitherSparseOrDensePowerSeries PseudoAlgebraicClosureOfFiniteField K +--R setDegree! : (%,PositiveInteger) -> Void +--R setFoundPlacesToEmpty : () -> List % +--R setParam! : (%,List NeitherSparseOrDensePowerSeries PseudoAlgebraicClosureOfFiniteField K) -> Void +--R +--E 1 + +)spool +)lisp (bye) +@ +<>= +==================================================================== +PlacesOverPseudoAlgebraicClosureOfFiniteField examples +==================================================================== + +See Also: +o )show PlacesOverPseudoAlgebraicClosureOfFiniteField + +@ +\pagehead{PlacesOverPseudoAlgebraicClosureOfFiniteField}{PLACESPS} +\pagepic{ps/v103placesoverpseudoalgebraicclosureoffinitefield.eps}% +{PLACESPS}{1.00} + +{\bf Exports:}\\ +\begin{tabular}{lllll} +\cross{PLACESPS}{-?} & +\cross{PLACESPS}{?*?} & +\cross{PLACESPS}{?+?} & +\cross{PLACESPS}{?-?} & +\cross{PLACESPS}{?.?} \\ +\cross{PLACESPS}{?=?} & +\cross{PLACESPS}{?\~{}=?} & +\cross{PLACESPS}{coerce} & +\cross{PLACESPS}{create} & +\cross{PLACESPS}{degree} \\ +\cross{PLACESPS}{foundPlaces} & +\cross{PLACESPS}{hash} & +\cross{PLACESPS}{itsALeaf!} & +\cross{PLACESPS}{latex} & +\cross{PLACESPS}{leaf?} \\ +\cross{PLACESPS}{localParam} & +\cross{PLACESPS}{reduce} & +\cross{PLACESPS}{setDegree!} & +\cross{PLACESPS}{setFoundPlacesToEmpty} & +\cross{PLACESPS}{setParam!} +\end{tabular} + +<>= +)abbrev domain PLACESPS PlacesOverPseudoAlgebraicClosureOfFiniteField +++ Author: Gaetan Hache +++ Date Created: 17 nov 1992 +++ Date Last Updated: May 2010 by Tim Daly +++ Description: +++ The following is part of the PAFF package +PlacesOverPseudoAlgebraicClosureOfFiniteField(K):Exports + == Implementation where + + K:FiniteFieldCategory + KK ==> PseudoAlgebraicClosureOfFiniteField(K) + PCS ==> NeitherSparseOrDensePowerSeries(KK) + + Exports ==> PlacesCategory(KK,PCS) + + Implementation ==> Plcs(KK,PCS) +@ +<>= +"PLACESPS" [color="#88FF44",href="bookvol10.3.pdf#nameddest=PLACESPS"]; +"PACOFF" [color="#88FF44",href="bookvol10.3.pdf#nameddest=PACOFF"] +"PLACESPS" -> "PACOFF" @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -126001,6 +126106,7 @@ Note that this code is not included in the generated catdef.spad file. <> <> <> +<> <> <> <> diff --git a/books/bookvol5.pamphlet b/books/bookvol5.pamphlet index b176b4e..1f8b634 100644 --- a/books/bookvol5.pamphlet +++ b/books/bookvol5.pamphlet @@ -24090,6 +24090,7 @@ otherwise the new algebra won't be loaded by the interpreter when needed. (|Pi| . HACKPI) (|PiCoercions| . PICOERCE) (|Places| . PLACES) + (|PlacesOverPseudoAlgebraicClosureOfFiniteField| . PLACESPS) (|Plcs| . PLCS) (|PointFunctions2| . PTFUNC2) (|PolyGroebner| . PGROEB) diff --git a/books/ps/v103placesoverpseudoalgebraicclosureoffinitefield.eps b/books/ps/v103placesoverpseudoalgebraicclosureoffinitefield.eps new file mode 100644 index 0000000..cc58e49 --- /dev/null +++ b/books/ps/v103placesoverpseudoalgebraicclosureoffinitefield.eps @@ -0,0 +1,266 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: Graphviz version 2.20.2 (Mon Mar 30 10:09:11 UTC 2009) +%%For: (root) root +%%Title: pic +%%Pages: 1 +%%BoundingBox: 36 36 132 152 +%%EndComments +save +%%BeginProlog +/DotDict 200 dict def +DotDict begin + +/setupLatin1 { +mark +/EncodingVector 256 array def + EncodingVector 0 + +ISOLatin1Encoding 0 255 getinterval putinterval +EncodingVector 45 /hyphen put + +% Set up ISO Latin 1 character encoding +/starnetISO { + dup dup findfont dup length dict begin + { 1 index /FID ne { def }{ pop pop } ifelse + } forall + /Encoding EncodingVector def + currentdict end definefont +} def +/Times-Roman starnetISO def +/Times-Italic starnetISO def +/Times-Bold starnetISO def +/Times-BoldItalic starnetISO def +/Helvetica starnetISO def +/Helvetica-Oblique starnetISO def +/Helvetica-Bold starnetISO def +/Helvetica-BoldOblique starnetISO def +/Courier starnetISO def +/Courier-Oblique starnetISO def +/Courier-Bold starnetISO def +/Courier-BoldOblique starnetISO def +cleartomark +} bind def + +%%BeginResource: procset graphviz 0 0 +/coord-font-family /Times-Roman def +/default-font-family /Times-Roman def +/coordfont coord-font-family findfont 8 scalefont def + +/InvScaleFactor 1.0 def +/set_scale { + dup 1 exch div /InvScaleFactor exch def + scale +} bind def + +% styles +/solid { [] 0 setdash } bind def +/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def +/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def +/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def +/bold { 2 setlinewidth } bind def +/filled { } bind def +/unfilled { } bind def +/rounded { } bind def +/diagonals { } bind def + +% hooks for setting color +/nodecolor { sethsbcolor } bind def +/edgecolor { sethsbcolor } bind def +/graphcolor { sethsbcolor } bind def +/nopcolor {pop pop pop} bind def + +/beginpage { % i j npages + /npages exch def + /j exch def + /i exch def + /str 10 string def + npages 1 gt { + gsave + coordfont setfont + 0 0 moveto + (\() show i str cvs show (,) show j str cvs show (\)) show + grestore + } if +} bind def + +/set_font { + findfont exch + scalefont setfont +} def + +% draw text fitted to its expected width +/alignedtext { % width text + /text exch def + /width exch def + gsave + width 0 gt { + [] 0 setdash + text stringwidth pop width exch sub text length div 0 text ashow + } if + grestore +} def + +/boxprim { % xcorner ycorner xsize ysize + 4 2 roll + moveto + 2 copy + exch 0 rlineto + 0 exch rlineto + pop neg 0 rlineto + closepath +} bind def + +/ellipse_path { + /ry exch def + /rx exch def + /y exch def + /x exch def + matrix currentmatrix + newpath + x y translate + rx ry scale + 0 0 1 0 360 arc + setmatrix +} bind def + +/endpage { showpage } bind def +/showpage { } def + +/layercolorseq + [ % layer color sequence - darkest to lightest + [0 0 0] + [.2 .8 .8] + [.4 .8 .8] + [.6 .8 .8] + [.8 .8 .8] + ] +def + +/layerlen layercolorseq length def + +/setlayer {/maxlayer exch def /curlayer exch def + layercolorseq curlayer 1 sub layerlen mod get + aload pop sethsbcolor + /nodecolor {nopcolor} def + /edgecolor {nopcolor} def + /graphcolor {nopcolor} def +} bind def + +/onlayer { curlayer ne {invis} if } def + +/onlayers { + /myupper exch def + /mylower exch def + curlayer mylower lt + curlayer myupper gt + or + {invis} if +} def + +/curlayer 0 def + +%%EndResource +%%EndProlog +%%BeginSetup +14 default-font-family set_font +1 setmiterlimit +% /arrowlength 10 def +% /arrowwidth 5 def + +% make sure pdfmark is harmless for PS-interpreters other than Distiller +/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse +% make '<<' and '>>' safe on PS Level 1 devices +/languagelevel where {pop languagelevel}{1} ifelse +2 lt { + userdict (<<) cvn ([) cvn load put + userdict (>>) cvn ([) cvn load put +} if + +%%EndSetup +setupLatin1 +%%Page: 1 1 +%%PageBoundingBox: 36 36 132 152 +%%PageOrientation: Portrait +0 0 1 beginpage +gsave +36 36 96 116 boxprim clip newpath +1 1 set_scale 0 rotate 40 40 translate +% PLACESPS +gsave +[ /Rect [ 0 72 88 108 ] + /Border [ 0 0 0 ] + /Action << /Subtype /URI /URI (bookvol10.3.pdf#nameddest=PLACESPS) >> + /Subtype /Link +/ANN pdfmark +0.273 0.733 1.000 nodecolor +newpath 88 108 moveto +0 108 lineto +0 72 lineto +88 72 lineto +closepath fill +1 setlinewidth +filled +0.273 0.733 1.000 nodecolor +newpath 88 108 moveto +0 108 lineto +0 72 lineto +88 72 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14 /Times-Roman set_font +7.5 85.9 moveto 73 (PLACESPS) alignedtext +grestore +% PACOFF +gsave +[ /Rect [ 8 0 80 36 ] + /Border [ 0 0 0 ] + /Action << /Subtype /URI /URI (bookvol10.3.pdf#nameddest=PACOFF) >> + /Subtype /Link +/ANN pdfmark +0.273 0.733 1.000 nodecolor +newpath 80 36 moveto +8 36 lineto +8 0 lineto +80 0 lineto +closepath fill +1 setlinewidth +filled +0.273 0.733 1.000 nodecolor +newpath 80 36 moveto +8 36 lineto +8 0 lineto +80 0 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14 /Times-Roman set_font +16 13.9 moveto 56 (PACOFF) alignedtext +grestore +% PLACESPS->PACOFF +gsave +1 setlinewidth +0.000 0.000 0.000 edgecolor +newpath 44 72 moveto +44 64 44 55 44 46 curveto +stroke +0.000 0.000 0.000 edgecolor +newpath 47.5 46 moveto +44 36 lineto +40.5 46 lineto +closepath fill +1 setlinewidth +solid +0.000 0.000 0.000 edgecolor +newpath 47.5 46 moveto +44 36 lineto +40.5 46 lineto +closepath stroke +grestore +endpage +showpage +grestore +%%PageTrailer +%%EndPage: 1 +%%Trailer +end +restore +%%EOF diff --git a/changelog b/changelog index c202536..7444da6 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,8 @@ +20100518 tpd src/axiom-website/patches.html 20100518.03.tpd.patch +20100518 tpd src/algebra/Makefile help and test for PLACESPS +20100518 tod books/bookvol5 expose PLACESPS +20100518 tpd books/bookvol10.3 add PLACESPS +20100518 tpd books/ps/v103placesoverpseudoalgebraicclosureoffinitefield.eps 20100518 tpd src/axiom-website/patches.html 20100518.02.tpd.patch 20100518 tpd books/ps/v103places.eps add new constraint 20100518 tpd src/axiom-website/patches.html 20100518.01.tpd.patch diff --git a/src/algebra/Makefile.pamphlet b/src/algebra/Makefile.pamphlet index 26409f6..f1760dd 100644 --- a/src/algebra/Makefile.pamphlet +++ b/src/algebra/Makefile.pamphlet @@ -12119,7 +12119,7 @@ LAYER17=\ ${OUT}/OCTCT2.o ${OUT}/ODEPAL.o ${OUT}/ODERTRIC.o ${OUT}/OMEXPR.o \ ${OUT}/PACEXTC.o ${OUT}/PADE.o \ ${OUT}/PAN2EXPR.o ${OUT}/PFO.o ${OUT}/PFOQ.o ${OUT}/PICOERCE.o \ - ${OUT}/PLACES.o \ + ${OUT}/PLACES.o ${OUT}/PLACESPS.o \ ${OUT}/PMASSFS.o ${OUT}/PMFS.o ${OUT}/PMPREDFS.o ${OUT}/PROJPLPS.o \ ${OUT}/PSETPK.o \ ${OUT}/QUAT.o ${OUT}/QUATCT2.o ${OUT}/RADFF.o ${OUT}/RDEEF.o \ @@ -14118,6 +14118,16 @@ LAYER17=\ /*"PLACES" -> {"SGROUP"; "MONOID"; "LMODULE"; "BMODULE"; "RMODULE"}*/ /*"PLACES" -> {"ALGEBRA"; "MODULE"; "ENTIRER"; "UFD"; "DIVRING"}*/ +"PLACESPS" [color="#88FF44",href="bookvol10.3.pdf#nameddest=PLACESPS"] +/*"PLACESPS" -> {"PLCS"; "PLACESC"; "SETCATD"; "SETCAT"; "BASTYPE"; "KOERCE"}*/ +"PLACESPS" -> "PACOFF" +/*"PLACESPS" -> {"PACFFC"; "FFIELDC"; "FPC"; "FIELD"; "EUCDOM"; "PID"}*/ +/*"PLACESPS" -> {"GCDDOM"; "INTDOM"; "COMRING"; "RING"; "RNG"; "ABELGRP"}*/ +/*"PLACESPS" -> {"CABMON"; "ABELMON"; "ABELSG"; "SGROUP"; "MONOID"}*/ +/*"PLACESPS" -> {"LMODULE"; "BMODULE"; "RMODULE"; "ALGEBRA"; "MODULE"}*/ +/*"PLACESPS" -> {"ENTIRER"; "UFD"; "DIVRING"; "CHARNZ"; "FINITE"; "STEP"}*/ +/*"PLACESPS" -> {"DIFRING"; "PACPERC"}*/ + "PICOERCE" [color="#FF4488",href="bookvol10.4.pdf#nameddest=PICOERCE"] /*"PICOERCE" -> {"ORDSET"; "SETCAT"; "BASTYPE"; "KOERCE"; "INTDOM"}*/ /*"PICOERCE" -> {"COMRING"; "RING"; "RNG"; "ABELGRP"; "CABMON"; "ABELMON"}*/ @@ -16579,6 +16589,21 @@ ${MID}/PLACES.nrlib/code.o: ${MID}/PLACES.spad | ${INTERPSYS} >${TMP}/trace ; \ fi ) @ +<>= + +PLACESPSDEPS = PLACESC SETCATD PACOFF PACFFC PACPERC NSDPS PLCS LOCPOWC DIV + +${MID}/PLACESPS.nrlib/code.o: ${MID}/PLACESPS.spad + @echo P3 making ${MID}/PLACESPS.nrlib/code.o from ${MID}/PLACESPS.spad + @ (cd ${MID} ; \ + if [ -z "${NOISE}" ] ; then \ + echo -e ")lib ${PLACESPSDEPS} \n )co PLACESPS.spad" \ + | ${INTERPSYS} ; \ + else \ + echo -e ")lib ${PLACESPSDEPS} \n )co PLACESPS.spad" \ + | ${INTERPSYS} >${TMP}/trace ; \ + fi ) +@ \section{Broken Files} These files are Aldor files @@ -17402,6 +17427,7 @@ SPADHELP=\ ${HELP}/Permutation.help \ ${HELP}/Places.help \ ${HELP}/PlacesCategory.help \ + ${HELP}/PlacesOverPseudoAlgebraicClosureOfFiniteField.help \ ${HELP}/PlaneAlgebraicCurvePlot.help \ ${HELP}/Plcs.help \ ${HELP}/Plot.help \ @@ -17578,6 +17604,7 @@ REGRESS= \ Permutation.regress \ Places.regress \ PlacesCategory.regress \ + PlacesOverPseudoAlgebraicClosureOfFiniteField.regress \ PlaneAlgebraicCurvePlot.regress \ Plcs.regress \ Plot.regress \ @@ -18926,6 +18953,22 @@ ${HELP}/PlacesCategory.help: ${BOOKS}/bookvol10.2.pamphlet >${INPUT}/PlacesCategory.input @echo "PlacesCategory (PLACESC)" >>${HELPFILE} +${HELP}/PlacesOverPseudoAlgebraicClosureOfFiniteField.help: \ + ${BOOKS}/bookvol10.3.pamphlet + @echo 7908 create \ + PlacesOverPseudoAlgebraicClosureOfFiniteField.help from \ + ${BOOKS}/bookvol10.3.pamphlet + @${TANGLE} -R"PlacesOverPseudoAlgebraicClosureOfFiniteField.help" \ + ${BOOKS}/bookvol10.3.pamphlet \ + >${HELP}/PlacesOverPseudoAlgebraicClosureOfFiniteField.help + @cp ${HELP}/PlacesOverPseudoAlgebraicClosureOfFiniteField.help \ + ${HELP}/PLACESPS.help + @${TANGLE} -R"PlacesOverPseudoAlgebraicClosureOfFiniteField.input" \ + ${BOOKS}/bookvol10.3.pamphlet \ + >${INPUT}/PlacesOverPseudoAlgebraicClosureOfFiniteField.input + @echo "PlacesOverPseudoAlgebraicClosureOfFiniteField (PLACESPS)" \ + >>${HELPFILE} + ${HELP}/PlaneAlgebraicCurvePlot.help: ${BOOKS}/bookvol10.3.pamphlet @echo 7910 create PlaneAlgebraicCurvePlot.help from \ ${BOOKS}/bookvol10.3.pamphlet diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index b55a19d..dc641c8 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -2751,5 +2751,7 @@ books/bookvol10.3 add Plcs
books/bookvol10.3 add Places
20100518.02.tpd.patch books/ps/v103places.eps add new constraint
+20100518.03.tpd.patch +books/bookvol10.3 add PlacesOverPseudoAlgebraicClosureOfFiniteField