login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for SandBoxProduct revision 1 of 1

1
Editor: Bill Page
Time: 2017/10/14 16:50:18 GMT+0
Note:

changed:
-
\begin{spad}
)abbrev domain PRD2 Product2
rep(x) ==> x @ % pretend Rep
per(x) ==> x @ Rep pretend %
Product2(X:SetCategory,Y:SetCategory): with
    construct: (X,Y) -> %
    coerce: % -> OutputForm
    product: (A:Type, A->X,A->Y) -> (A->%)
    project1: (%) -> X
    project2: (%) -> Y
  == add
    Rep := Record(a:X,b:Y)
    import from Rep
    --
    construct(x:X,y:Y):% == per [x,y]
    coerce(x:%):OutputForm ==
      bracket([coerce(rep(x).a)$X, coerce(rep(x).b)$Y]$List(OutputForm))
    project1(x:%):X == rep(x).a
    project2(y:%):Y == rep(y).b
    product(A:Type,f:A->X,g:A->Y):(A->%) ==
       (x:A):% +-> per [f(x),g(x)]
\end{spad}

spad
)abbrev domain PRD2 Product2
rep(x) ==> x @ % pretend Rep
per(x) ==> x @ Rep pretend %
Product2(X:SetCategory,Y:SetCategory): with
    construct: (X,Y) -> %
    coerce: % -> OutputForm
    product: (A:Type, A->X,A->Y) -> (A->%)
    project1: (%) -> X
    project2: (%) -> Y
  == add
    Rep := Record(a:X,b:Y)
    import from Rep
    --
    construct(x:X,y:Y):% == per [x,y]
    coerce(x:%):OutputForm ==
      bracket([coerce(rep(x).a)$X, coerce(rep(x).b)$Y]$List(OutputForm))
    project1(x:%):X == rep(x).a
    project2(y:%):Y == rep(y).b
    product(A:Type,f:A->X,g:A->Y):(A->%) ==
       (x:A):% +-> per [f(x),g(x)]
spad
   Compiling FriCAS source code from file 
      /var/lib/zope2.10/instance/axiom-wiki/var/LatexWiki/1649910186997427983-25px001.spad
      using old system compiler.
   PRD2 abbreviates domain Product2 
------------------------------------------------------------------------
   initializing NRLIB PRD2 for Product2 
   compiling into NRLIB PRD2 
   importing Rep
   compiling exported construct : (X,Y) -> $
Time: 0 SEC.
compiling exported coerce : $ -> OutputForm Time: 0 SEC.
compiling exported project1 : $ -> X PRD2;project1;$X;3 is replaced by QCAR Time: 0 SEC.
compiling exported project2 : $ -> Y PRD2;project2;$Y;4 is replaced by QCDR Time: 0 SEC.
compiling exported product : (Type,A -> X,A -> Y) -> A -> $ Time: 0 SEC.
(time taken in buildFunctor: 0)
;;; *** |Product2| REDEFINED
;;; *** |Product2| REDEFINED Time: 0 SEC.
Warnings: [1] construct: pretend$ -- should replace by @ [2] coerce: pretendRep -- should replace by @ [3] project1: pretendRep -- should replace by @ [4] project2: pretendRep -- should replace by @ [5] product: pretend$ -- should replace by @
Cumulative Statistics for Constructor Product2 Time: 0 seconds
finalizing NRLIB PRD2 Processing Product2 for Browser database: --->-->Product2(constructor): Not documented!!!! --->-->Product2((construct (% X Y))): Not documented!!!! --->-->Product2((coerce ((OutputForm) %))): Not documented!!!! --->-->Product2((product ((Mapping % A) (Type) (Mapping X A) (Mapping Y A)))): Not documented!!!! --->-->Product2((project1 (X %))): Not documented!!!! --->-->Product2((project2 (Y %))): Not documented!!!! --->-->Product2(): Missing Description ; compiling file "/var/aw/var/LatexWiki/PRD2.NRLIB/PRD2.lsp" (written 14 OCT 2017 04:50:18 PM):
; /var/aw/var/LatexWiki/PRD2.NRLIB/PRD2.fasl written ; compilation finished in 0:00:00.021 ------------------------------------------------------------------------ Product2 is now explicitly exposed in frame initial Product2 will be automatically loaded when needed from /var/aw/var/LatexWiki/PRD2.NRLIB/PRD2