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

Edit detail for SandBoxGeom1 revision 1 of 2

1 2
Editor: Kurt Pagani
Time: 2014/11/23 02:23:48 GMT+0
Note:

changed:
-
\begin{spad}
)abbrev domain RSPACE RealSpace
++ Author: Kurt Pagani
++ Date Created: Thu Nov 06 03:51:56 CET 2014
++ License: BSD (same as Axiom)
++ Date Last Updated:
++ Basic Operations: 
++ Related Domains: 
++ Also See:
++ AMS Classifications:
++ Keywords: 
++ Examples:
++ References:
++
++ Description:
++ 
++
RealSpace(n) : Exports == Implementation where
  
  NNI ==> NonNegativeInteger
  PI  ==> PositiveInteger
  I   ==> Integer
  R   ==> Expression Integer -- Real
  n:NNI
  
  Exports == Join(VectorSpace R , CoercibleTo OutputForm) with
    
    coerce : % -> OutputForm
    coerce : List R -> %
    coerce : Vector R -> %
    coerce : List Symbol -> %
    coerce : R -> %
    coerce : % -> List R
    coerce : % -> Vector R
      
    dot : (%,%) -> R
    dim : % -> NNI
    
    "+" : (%,%) -> %
    "-" : (%,%) -> %
    "*" : (R,%) -> %
    "*" : (NNI,%) -> %
    "*" : (PI,%)  -> %
    "*" : (I,%)   -> %
    "/" : (%,R)   -> %
    
    "#" : % -> NNI
    "-" : % -> %
    "=" : (%,%) -> Boolean
    "~=": (%,%) -> Boolean
    
    unitVector : PI -> %
    elt : (%,I) -> R
    
    eval: (%, Equation R) -> %
    eval: (%, List Equation R) -> % 
    
    every?: (R -> Boolean, %) -> Boolean
    map: (R -> R, %) -> %  -- strange, to check
    member?: (R, %) -> Boolean
    any?: (R -> Boolean, %) -> Boolean
    copy: % -> %
    D: (%, Symbol) -> %
    D: (%, Symbol, NonNegativeInteger) -> %
    D: (%, List Symbol) -> %
    D: (%, List Symbol, List NonNegativeInteger) -> %
    
    dist : (%,%) -> R
    norm : % -> R
    tprod : (%,%) -> Matrix(R)   -- tensor prod as Matrix Real
    -- _*_* : (%,%) -> RealSpace(n^2) 
    cross : List(%) -> %

   
   
  Implementation == DirectProduct(n,R) add
    
    Rep := DirectProduct(n,R)
    
    coerce(l:List R):% == 
      #l=n => directProduct((vector l)::Vector(R))$Rep
      
    coerce(l:Vector R):% == 
      #l=n => directProduct(l)$Rep 
      
    coerce(l:List Symbol):% ==
      #l=n => coerce([r::R for r in l])
        
    coerce(x:R):% == x*unitVector(1)$Rep
    
    coerce(v:%):List R == [v(j) for j in 1..#v]
   
    coerce(v:%):Vector R == vector [v(j) for j in 1..#v]
    
    dim(x:%):NNI == #(x::List R) -- n
    dist(x:%,y:%):R == sqrt dot(x-y,x-y)
    norm(x:%):R == sqrt dot(x,x)
    
    tprod(x:%,y:%):Matrix(R) == 
      matrix [[x.i*(y.j)::R for j in 1..n] for i in 1..n]
      
    --wprod(x:%,y:%):Matrix(R) == (tprod(x,y)-tprod(y,x))/2::R
    
    --_*_*(x:%,y:%):RealSpace(n^2) == 
    --  X:List Real:=[]
    --  for i in 1..n repeat
    --    X:=append(X,[x.i*(y.j)::Real for j in 1..n])  
    --  X::RealSpace(n^2)
    
    -- local ; better coerce in ??? 
    vec2list(v:Vector(R)):List(R) == [v.j for j in 1..#v]
    
    cross(X:List %):% ==
      #X ~= n-1 => error "Wrong number of arguments."
      L:List(List R):=[r::List(R) for r in X]
      M:Matrix(R):= transpose matrix L
      S:List(List R):=[vec2list(row(M,i)) for i in 1..n]
      LS:List(Matrix R):=[matrix([S.i for i in 1..n | i~=j]) for j in 1..n]
      r:List R:=[(-1)^(i-1)::R*determinant(LS.i) for i in 1..n]
      r::Rep
           
)abbrev package INTVAL Interval
++ Author: kfp
++ Date Created: Thu Nov 06 02:46:09 CET 2014
++ License: BSD (same as Axiom)
++ Date Last Updated:
++ Basic Operations: 
++ Related Domains: 
++ Also See:
++ AMS Classifications:
++ Keywords: 
++ Examples:
++ References:
++
++ Description:
++ 
++
Interval(F:Field) : Exports == Implementation where

  OF  ==> OutputForm
  PI  ==> PositiveInteger
  NNI ==> NonNegativeInteger
  Q   ==> Fraction Integer
  
  Exports ==  Join(CoercibleTo OutputForm) with
    
    coerce : Tuple F -> %
    coerce : List F -> %
    coerce : % -> List F
    coerce : % -> OutputForm
    
    closedInterval    : (F,F) -> %
    openInterval      : (F,F) -> %
    leftOpenInterval  : (F,F) -> %
    rightOpenInterval : (F,F) -> %
    
    lb : % -> F
    ub : % -> F
    topology : % -> OutputForm 
    measure  : % -> F
    
    --"*" : (%,%) -> Cell(F,2)
    "*" : (F,%) -> %
    "+" : (F,%) -> %
	
  Implementation == add 
    
    Rep:= Record(lb:F,ub:F,tp:String)
    
    --check(x:%):% == 
      --if number?(x.lb) and number?(x.ub) then
        --(x.ub)::Q < (x.lb)::Q => error "a>b"
      --x
 
    coerce(l:Tuple F):% == -- does not work ????
      length l ~=2 => error "Form expected: (a,b)"
      [select(l,0), select(l,1),"open"]::Rep
      
    coerce(l:List F):% == 
      #l ~=2 => error "Form expected: [a,b]"
      [l.1,l.2,"closed"]::Rep
      
    coerce(x:%):List F == [x.lb,x.ub]
  
    coerce(x:%):OF ==
      x.tp = "closed"    => hconcat ["[",x.lb::OF,",",x.ub::OF,"]"]
      x.tp = "open"      => hconcat ["(",x.lb::OF,",",x.ub::OF,")"]
      x.tp = "leftOpen"  => hconcat ["(",x.lb::OF,",",x.ub::OF,"]"]
      x.tp = "rightOpen" => hconcat ["[",x.lb::OF,",",x.ub::OF,")"]
   
    lb(x) == x.lb
    ub(x) == x.ub
    topology(x:%):OF == x.tp::Symbol::OF
    measure(x:%):F == x.ub - x.lb

    closedInterval(a,b)    == [a,b,"closed"]::Rep
    openInterval(a,b)      == [a,b,"open"]::Rep
    leftOpenInterval(a,b)  == [a,b,"leftOpen"]::Rep
    rightOpenInterval(a,b) == [a,b,"rightOpen"]::Rep
    
    --x:% * y:% == 
      --m:Matrix(F):=matrix([[lb x,ub x],[lb y,ub y]])
      --m::Cell(F,2)

    a:F + x:% == [a+x.lb,a+x.ub,x.tp]::Rep
    a:F * x:% == [a*x.lb,a*x.ub,x.tp]::Rep
      

)abbrev domain CELL Cell
++ Author: kfp
++ Date Created: Thu Nov 06 02:39:44 CET 2014
++ License: BSD (same as Axiom)
++ Date Last Updated:
++ Basic Operations: 
++ Related Domains: 
++ Also See:
++ AMS Classifications:
++ Keywords: 
++ Examples:
++ References:
++
++ Description:
++ 
++
Cell(k,F) : Exports == Implementation where
  
  NNI ==> NonNegativeInteger
  OF  ==> OutputForm
  
  F: Field
  k: NNI 
  
  Exports == Join(CoercibleTo OutputForm) with
    
   coerce : Matrix F -> % 
   coerce : % -> List Interval F   --  ex. c::List(Interval RR)
   coerce : List Interval F -> %
   coerce : % -> OutputForm

   measure : % -> F
	
  Implementation ==  Matrix F add 

    Rep := Matrix F
    
    coerce(c:%):List Interval F == 
      lc:List(List F):=listOfLists(c)
      #lc ~= k => error "Wrong dimension"
      [i::Interval(F) for i in lc]
      
    coerce(l:List Interval F):% ==
      matrix [i::List(F) for i in l]
    
    coerce(m:Matrix F):% ==
      ncols m ~= 2   => error "Expecting (k x 2) matrix"
      nrows m ~= k   => error "Expecting (k x 2) matrix"
      m
   
    coerce(c:%):OF == (c::List Interval F)::OF
      
   
    measure(c:%):F == 
      L:=c::List Interval F
      mL:=[measure(v) for v in L]
      determinant(diagonalMatrix(mL))


    -- pi:=%pi$RR 
    
)abbrev domain SURF Surface
++ Author: kfp
++ Date Created: Tue Nov 11 21:57:52 CET 2014
++ License: BSD (same as Axiom)
++ Date Last Updated:
++ Basic Operations: 
++ Related Domains: 
++ Also See:
++ AMS Classifications:
++ Keywords: 
++ Examples:
++ References:
++
++ Description:
++ k-surface
++
Surface(k,n) : Exports == Implementation where
  
  PYI   ==> Polynomial(Integer)
  NNI   ==> NonNegativeInteger
  SYM   ==> Symbol
  PI    ==> PositiveInteger
  OF    ==> OutputForm
  X     ==> RealSpace(k) -> RealSpace(n) 
  R     ==> Expression Integer 
  k:PI
  n:PI
  --V:Vectorspace(Real)
  
  Exports == Join(CoercibleTo OutputForm) with
    
    coerce : % -> OutputForm
    coerce : X -> % 
    dim    : % -> PI
    codim  : % -> PI
    eval   : (%, List R) -> RealSpace(n)
    eval   : (%, List Symbol) -> RealSpace(n)
	
    JacobianMatrix : (%, List Symbol) -> Matrix(R)
    TangentSpace : (%, List Symbol) -> List RealSpace(n) 
    CoTangentSpace : (%, List Symbol) -> List RealSpace(n)
    normal : (%, List Symbol) -> RealSpace(n)
	
  Implementation == add 

    Rep := Record(kk:PI,nn:PI,ff:X)
                  
    coerce(f:X):% == n>k and k>0 => [k,n,f]::Rep

    coerce(S:%):OF == hconcat [S.kk::OF,"-surface in R^"::SYM::OF,S.nn::OF]
   
    dim(S:%):PI == S.kk
    codim(S:%):PI == (S.nn - S.kk)::PI 
    
    eval(S:%,x:List R) == (S.ff)(x::RealSpace(k)) 
    eval(S:%,x:List Symbol) == (S.ff)(x::RealSpace(k))
  
    JacobianMatrix(S:%, x:List Symbol):Matrix(R) ==
      transpose matrix [D((S.ff)(x::RealSpace(k)),u)::List(R) for u in x]
     
    -- local ; better coerce in ??? 
    vec2list(v:Vector(R)):List(R) == [v.j for j in 1..#v]
      
     
    TangentSpace(S:%, x:List Symbol):List RealSpace(n) ==
      J:=JacobianMatrix(S,x)
      [vec2list(column(J,j))::RealSpace(n) for j in 1..ncols(J)]
      
    CoTangentSpace(S:%, x:List Symbol):List RealSpace(n) ==  
      ts:=TangentSpace(S,x)
      rd:=[[0::R for i in 1..n]::RealSpace(n) for j in k+1..n]
      Q:=append(ts,rd)
      QR:=[v::List R for v in Q]
      M:=(matrix QR)::Matrix(R)
      [vec2list(y)::RealSpace(n) for y in nullSpace(M)]
      
     
    normal(S:%, x:List Symbol):RealSpace(n) ==
      cs:=CoTangentSpace(S,x)
      #cs ~= 1 => error "Not a hypersurface"
      v:=cs.1
      r:= sqrt(dot(v,v))
      r = 0 => error "No normal; zero vector"
      v/r          

\end{spad}

\begin{axiom}
R ==> EXPR INT
R2 ==> RealSpace(2)
R3 ==> RealSpace(3)
f: R2 -> R3
f(X) == [(1+X.2/2*cos(X.1/2))*cos(X.1),(1+X.2/2*cos(X.1/2))*sin(X.1),X.2/2*sin(X.1/2)::R]::R3
f
typeOf f
\end{axiom}

Example
  Möbius strip as 2-surface

\begin{axiom}
f([u,v::Symbol]::R2)
-- proxy error without tex off !!
)set output tex off
)set output algebra on
S:=f::Surface(2,3)
dim S
eval(S,[u,v])
ts:=TangentSpace(S,[u,v])
cs:=CoTangentSpace(S,[u,v])
ns:=normal(S,[u,v])
\end{axiom}


**Cross product in R^n**

\begin{axiom}
X:=[a,b,c,d::R]::RealSpace(4)
Y:=[p,q,r,s::R]::RealSpace(4)
Z:=[t,u,v,w::R]::RealSpace(4)
C:=cross [X,Y,Z]
[dot(C,v) for v in [X,Y,Z]]
\end{axiom}





spad
)abbrev domain RSPACE RealSpace
++ Author: Kurt Pagani
++ Date Created: Thu Nov 06 03:51:56 CET 2014
++ License: BSD (same as Axiom)
++ Date Last Updated:
++ Basic Operations: 
++ Related Domains: 
++ Also See:
++ AMS Classifications:
++ Keywords: 
++ Examples:
++ References:
++
++ Description:
++ 
++
RealSpace(n) : Exports == Implementation where
NNI ==> NonNegativeInteger PI ==> PositiveInteger I ==> Integer R ==> Expression Integer -- Real n:NNI
Exports == Join(VectorSpace R , CoercibleTo OutputForm) with
coerce : % -> OutputForm coerce : List R -> % coerce : Vector R -> % coerce : List Symbol -> % coerce : R -> % coerce : % -> List R coerce : % -> Vector R
dot : (%,%) -> R dim : % -> NNI
"+" : (%,%) -> % "-" : (%,%) -> % "*" : (R,%) -> % "*" : (NNI,%) -> % "*" : (PI,%) -> % "*" : (I,%) -> % "/" : (%,R) -> %
"#" : % -> NNI "-" : % -> % "=" : (%,%) -> Boolean "~=": (%,%) -> Boolean
unitVector : PI -> % elt : (%,I) -> R
eval: (%, Equation R) -> % eval: (%, List Equation R) -> %
every?: (R -> Boolean, %) -> Boolean map: (R -> R, %) -> % -- strange, to check member?: (R, %) -> Boolean any?: (R -> Boolean, %) -> Boolean copy: % -> % D: (%, Symbol) -> % D: (%, Symbol, NonNegativeInteger) -> % D: (%, List Symbol) -> % D: (%, List Symbol, List NonNegativeInteger) -> %
dist : (%,%) -> R norm : % -> R tprod : (%,%) -> Matrix(R) -- tensor prod as Matrix Real -- _*_* : (%,%) -> RealSpace(n^2) cross : List(%) -> %
Implementation == DirectProduct(n,R) add
Rep := DirectProduct(n,R)
coerce(l:List R):% == #l=n => directProduct((vector l)::Vector(R))$Rep
coerce(l:Vector R):% == #l=n => directProduct(l)$Rep
coerce(l:List Symbol):% == #l=n => coerce([r::R for r in l])
coerce(x:R):% == x*unitVector(1)$Rep
coerce(v:%):List R == [v(j) for j in 1..#v]
coerce(v:%):Vector R == vector [v(j) for j in 1..#v]
dim(x:%):NNI == #(x::List R) -- n dist(x:%,y:%):R == sqrt dot(x-y,x-y) norm(x:%):R == sqrt dot(x,x)
tprod(x:%,y:%):Matrix(R) == matrix [[x.i*(y.j)::R for j in 1..n] for i in 1..n]
--wprod(x:%,y:%):Matrix(R) == (tprod(x,y)-tprod(y,x))/2::R
--_*_*(x:%,y:%):RealSpace(n^2) == -- X:List Real:=[] -- for i in 1..n repeat -- X:=append(X,[x.i*(y.j)::Real for j in 1..n]) -- X::RealSpace(n^2)
-- local ; better coerce in ??? vec2list(v:Vector(R)):List(R) == [v.j for j in 1..#v]
cross(X:List %):% == #X ~= n-1 => error "Wrong number of arguments." L:List(List R):=[r::List(R) for r in X] M:Matrix(R):= transpose matrix L S:List(List R):=[vec2list(row(M,i)) for i in 1..n] LS:List(Matrix R):=[matrix([S.i for i in 1..n | i~=j]) for j in 1..n] r:List R:=[(-1)^(i-1)::R*determinant(LS.i) for i in 1..n] r::Rep
)abbrev package INTVAL Interval ++ Author: kfp ++ Date Created: Thu Nov 06 02:46:09 CET 2014 ++ License: BSD (same as Axiom) ++ Date Last Updated: ++ Basic Operations: ++ Related Domains: ++ Also See: ++ AMS Classifications: ++ Keywords: ++ Examples: ++ References: ++ ++ Description: ++ ++ Interval(F:Field) : Exports == Implementation where
OF ==> OutputForm PI ==> PositiveInteger NNI ==> NonNegativeInteger Q ==> Fraction Integer
Exports == Join(CoercibleTo OutputForm) with
coerce : Tuple F -> % coerce : List F -> % coerce : % -> List F coerce : % -> OutputForm
closedInterval : (F,F) -> % openInterval : (F,F) -> % leftOpenInterval : (F,F) -> % rightOpenInterval : (F,F) -> %
lb : % -> F ub : % -> F topology : % -> OutputForm measure : % -> F
--"*" : (%,%) -> Cell(F,2) "*" : (F,%) -> % "+" : (F,%) -> %
Implementation == add
Rep:= Record(lb:F,ub:F,tp:String)
--check(x:%):% == --if number?(x.lb) and number?(x.ub) then --(x.ub)::Q < (x.lb)::Q => error "a>b" --x
coerce(l:Tuple F):% == -- does not work ???? length l ~=2 => error "Form expected: (a,b)" [select(l,0), select(l,1),"open"]::Rep
coerce(l:List F):% == #l ~=2 => error "Form expected: [a,b]" [l.1,l.2,"closed"]::Rep
coerce(x:%):List F == [x.lb,x.ub]
coerce(x:%):OF == x.tp = "closed" => hconcat ["[",x.lb::OF,",",x.ub::OF,"]"] x.tp = "open" => hconcat ["(",x.lb::OF,",",x.ub::OF,")"] x.tp = "leftOpen" => hconcat ["(",x.lb::OF,",",x.ub::OF,"]"] x.tp = "rightOpen" => hconcat ["[",x.lb::OF,",",x.ub::OF,")"]
lb(x) == x.lb ub(x) == x.ub topology(x:%):OF == x.tp::Symbol::OF measure(x:%):F == x.ub - x.lb
closedInterval(a,b) == [a,b,"closed"]::Rep openInterval(a,b) == [a,b,"open"]::Rep leftOpenInterval(a,b) == [a,b,"leftOpen"]::Rep rightOpenInterval(a,b) == [a,b,"rightOpen"]::Rep
--x:% * y:% == --m:Matrix(F):=matrix([[lb x,ub x],[lb y,ub y]]) --m::Cell(F,2)
a:F + x:% == [a+x.lb,a+x.ub,x.tp]::Rep a:F * x:% == [a*x.lb,a*x.ub,x.tp]::Rep
)abbrev domain CELL Cell ++ Author: kfp ++ Date Created: Thu Nov 06 02:39:44 CET 2014 ++ License: BSD (same as Axiom) ++ Date Last Updated: ++ Basic Operations: ++ Related Domains: ++ Also See: ++ AMS Classifications: ++ Keywords: ++ Examples: ++ References: ++ ++ Description: ++ ++ Cell(k,F) : Exports == Implementation where
NNI ==> NonNegativeInteger OF ==> OutputForm
F: Field k: NNI
Exports == Join(CoercibleTo OutputForm) with
coerce : Matrix F -> % coerce : % -> List Interval F -- ex. c::List(Interval RR) coerce : List Interval F -> % coerce : % -> OutputForm
measure : % -> F
Implementation == Matrix F add
Rep := Matrix F
coerce(c:%):List Interval F == lc:List(List F):=listOfLists(c) #lc ~= k => error "Wrong dimension" [i::Interval(F) for i in lc]
coerce(l:List Interval F):% == matrix [i::List(F) for i in l]
coerce(m:Matrix F):% == ncols m ~= 2 => error "Expecting (k x 2) matrix" nrows m ~= k => error "Expecting (k x 2) matrix" m
coerce(c:%):OF == (c::List Interval F)::OF
measure(c:%):F == L:=c::List Interval F mL:=[measure(v) for v in L] determinant(diagonalMatrix(mL))
-- pi:=%pi$RR
)abbrev domain SURF Surface ++ Author: kfp ++ Date Created: Tue Nov 11 21:57:52 CET 2014 ++ License: BSD (same as Axiom) ++ Date Last Updated: ++ Basic Operations: ++ Related Domains: ++ Also See: ++ AMS Classifications: ++ Keywords: ++ Examples: ++ References: ++ ++ Description: ++ k-surface ++ Surface(k,n) : Exports == Implementation where
PYI ==> Polynomial(Integer) NNI ==> NonNegativeInteger SYM ==> Symbol PI ==> PositiveInteger OF ==> OutputForm X ==> RealSpace(k) -> RealSpace(n) R ==> Expression Integer k:PI n:PI --V:Vectorspace(Real)
Exports == Join(CoercibleTo OutputForm) with
coerce : % -> OutputForm coerce : X -> % dim : % -> PI codim : % -> PI eval : (%, List R) -> RealSpace(n) eval : (%, List Symbol) -> RealSpace(n)
JacobianMatrix : (%, List Symbol) -> Matrix(R) TangentSpace : (%, List Symbol) -> List RealSpace(n) CoTangentSpace : (%, List Symbol) -> List RealSpace(n) normal : (%, List Symbol) -> RealSpace(n)
Implementation == add
Rep := Record(kk:PI,nn:PI,ff:X)
coerce(f:X):% == n>k and k>0 => [k,n,f]::Rep
coerce(S:%):OF == hconcat [S.kk::OF,"-surface in R^"::SYM::OF,S.nn::OF]
dim(S:%):PI == S.kk codim(S:%):PI == (S.nn - S.kk)::PI
eval(S:%,x:List R) == (S.ff)(x::RealSpace(k)) eval(S:%,x:List Symbol) == (S.ff)(x::RealSpace(k))
JacobianMatrix(S:%, x:List Symbol):Matrix(R) == transpose matrix [D((S.ff)(x::RealSpace(k)),u)::List(R) for u in x]
-- local ; better coerce in ??? vec2list(v:Vector(R)):List(R) == [v.j for j in 1..#v]
TangentSpace(S:%, x:List Symbol):List RealSpace(n) == J:=JacobianMatrix(S,x) [vec2list(column(J,j))::RealSpace(n) for j in 1..ncols(J)]
CoTangentSpace(S:%, x:List Symbol):List RealSpace(n) == ts:=TangentSpace(S,x) rd:=[[0::R for i in 1..n]::RealSpace(n) for j in k+1..n] Q:=append(ts,rd) QR:=[v::List R for v in Q] M:=(matrix QR)::Matrix(R) [vec2list(y)::RealSpace(n) for y in nullSpace(M)]
normal(S:%, x:List Symbol):RealSpace(n) == cs:=CoTangentSpace(S,x) #cs ~= 1 => error "Not a hypersurface" v:=cs.1 r:= sqrt(dot(v,v)) r = 0 => error "No normal; zero vector" v/r
spad
   Compiling FriCAS source code from file 
      /var/lib/zope2.10/instance/axiom-wiki/var/LatexWiki/6168575904420507084-25px001.spad
      using old system compiler.
   RSPACE abbreviates domain RealSpace 
------------------------------------------------------------------------
   initializing NRLIB RSPACE for RealSpace 
   compiling into NRLIB RSPACE 
   compiling exported coerce : List Expression Integer -> $
Time: 0.06 SEC.
compiling exported coerce : Vector Expression Integer -> $ Time: 0 SEC.
compiling exported coerce : List Symbol -> $ Time: 0.01 SEC.
compiling exported coerce : Expression Integer -> $ Time: 0.02 SEC.
compiling exported coerce : $ -> List Expression Integer Time: 0.01 SEC.
compiling exported coerce : $ -> Vector Expression Integer Time: 0 SEC.
compiling exported dim : $ -> NonNegativeInteger Time: 0.01 SEC.
compiling exported dist : ($,$) -> Expression Integer Time: 0 SEC.
compiling exported norm : $ -> Expression Integer Time: 0 SEC.
compiling exported tprod : ($,$) -> Matrix Expression Integer Time: 0.02 SEC.
compiling local vec2list : Vector Expression Integer -> List Expression Integer Time: 0 SEC.
compiling exported cross : List $ -> $ Time: 0.06 SEC.
(time taken in buildFunctor: 10)
;;; *** |RealSpace| REDEFINED
;;; *** |RealSpace| REDEFINED Time: 0.03 SEC.
Cumulative Statistics for Constructor RealSpace Time: 0.22 seconds
--------------non extending category---------------------- .. RealSpace(#1) of cat (|Join| (|VectorSpace| (|Expression| (|Integer|))) (|CoercibleTo| (|OutputForm|)) (CATEGORY |domain| (SIGNATURE |coerce| ((|OutputForm|) $)) (SIGNATURE |coerce| ($ (|List| (|Expression| (|Integer|))))) (SIGNATURE |coerce| ($ (|Vector| (|Expression| (|Integer|))))) (SIGNATURE |coerce| ($ (|List| (|Symbol|)))) (SIGNATURE |coerce| ($ (|Expression| (|Integer|)))) (SIGNATURE |coerce| ((|List| (|Expression| (|Integer|))) $)) (SIGNATURE |coerce| ((|Vector| (|Expression| (|Integer|))) $)) (SIGNATURE |dot| ((|Expression| (|Integer|)) $ $)) (SIGNATURE |dim| ((|NonNegativeInteger|) $)) (SIGNATURE + ($ $ $)) (SIGNATURE - ($ $ $)) (SIGNATURE * ($ (|Expression| (|Integer|)) $)) (SIGNATURE * ($ (|NonNegativeInteger|) $)) (SIGNATURE * ($ (|PositiveInteger|) $)) (SIGNATURE * ($ (|Integer|) $)) (SIGNATURE / ($ $ (|Expression| (|Integer|)))) (SIGNATURE |#| ((|NonNegativeInteger|) $)) (SIGNATURE - ($ $)) (SIGNATURE = ((|Boolean|) $ $)) (SIGNATURE ~= ((|Boolean|) $ $)) (SIGNATURE |unitVector| ($ (|PositiveInteger|))) (SIGNATURE |elt| ((|Expression| (|Integer|)) $ (|Integer|))) (SIGNATURE |eval| ($ $ (|Equation| (|Expression| (|Integer|))))) (SIGNATURE |eval| ($ $ (|List| (|Equation| (|Expression| (|Integer|)))))) (SIGNATURE |every?| ((|Boolean|) (|Mapping| (|Boolean|) (|Expression| (|Integer|))) $)) (SIGNATURE |map| ($ (|Mapping| (|Expression| (|Integer|)) (|Expression| (|Integer|))) $)) (SIGNATURE |member?| ((|Boolean|) (|Expression| (|Integer|)) $)) (SIGNATURE |any?| ((|Boolean|) (|Mapping| (|Boolean|) (|Expression| (|Integer|))) $)) (SIGNATURE |copy| ($ $)) (SIGNATURE D ($ $ (|Symbol|))) (SIGNATURE D ($ $ (|Symbol|) (|NonNegativeInteger|))) (SIGNATURE D ($ $ (|List| (|Symbol|)))) (SIGNATURE D ($ $ (|List| (|Symbol|)) (|List| (|NonNegativeInteger|)))) (SIGNATURE |dist| ((|Expression| (|Integer|)) $ $)) (SIGNATURE |norm| ((|Expression| (|Integer|)) $)) (SIGNATURE |tprod| ((|Matrix| (|Expression| (|Integer|))) $ $)) (SIGNATURE |cross| ($ (|List| $))))) has no (|DirectProductCategory| |#1| (|Expression| (|Integer|))) finalizing NRLIB RSPACE Processing RealSpace for Browser database: --------constructor--------- --->-->RealSpace((coerce ((OutputForm) %))): Not documented!!!! --->-->RealSpace((coerce (% (List (Expression (Integer)))))): Not documented!!!! --->-->RealSpace((coerce (% (Vector (Expression (Integer)))))): Not documented!!!! --->-->RealSpace((coerce (% (List (Symbol))))): Not documented!!!! --->-->RealSpace((coerce (% (Expression (Integer))))): Not documented!!!! --->-->RealSpace((coerce ((List (Expression (Integer))) %))): Not documented!!!! --->-->RealSpace((coerce ((Vector (Expression (Integer))) %))): Not documented!!!! --->-->RealSpace((dot ((Expression (Integer)) % %))): Not documented!!!! --->-->RealSpace((dim ((NonNegativeInteger) %))): Not documented!!!! --->-->RealSpace((+ (% % %))): Not documented!!!! --->-->RealSpace((- (% % %))): Not documented!!!! --->-->RealSpace((* (% (Expression (Integer)) %))): Not documented!!!! --->-->RealSpace((* (% (NonNegativeInteger) %))): Not documented!!!! --->-->RealSpace((* (% (PositiveInteger) %))): Not documented!!!! --->-->RealSpace((* (% (Integer) %))): Not documented!!!! --->-->RealSpace((/ (% % (Expression (Integer))))): Not documented!!!! --->-->RealSpace((# ((NonNegativeInteger) %))): Not documented!!!! --->-->RealSpace((- (% %))): Not documented!!!! --->-->RealSpace((= ((Boolean) % %))): Not documented!!!! --->-->RealSpace((~= ((Boolean) % %))): Not documented!!!! --->-->RealSpace((unitVector (% (PositiveInteger)))): Not documented!!!! --->-->RealSpace((elt ((Expression (Integer)) % (Integer)))): Not documented!!!! --->-->RealSpace((eval (% % (Equation (Expression (Integer)))))): Not documented!!!! --->-->RealSpace((eval (% % (List (Equation (Expression (Integer))))))): Not documented!!!! --->-->RealSpace((every? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->-->RealSpace((map (% (Mapping (Expression (Integer)) (Expression (Integer))) %))): Not documented!!!! --->-->RealSpace((member? ((Boolean) (Expression (Integer)) %))): Not documented!!!! --->-->RealSpace((any? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->-->RealSpace((copy (% %))): Not documented!!!! --->-->RealSpace((D (% % (Symbol)))): Not documented!!!! --->-->RealSpace((D (% % (Symbol) (NonNegativeInteger)))): Not documented!!!! --->-->RealSpace((D (% % (List (Symbol))))): Not documented!!!! --->-->RealSpace((D (% % (List (Symbol)) (List (NonNegativeInteger))))): Not documented!!!! --->-->RealSpace((dist ((Expression (Integer)) % %))): Not documented!!!! --->-->RealSpace((norm ((Expression (Integer)) %))): Not documented!!!! --->-->RealSpace((tprod ((Matrix (Expression (Integer))) % %))): Not documented!!!! --->-->RealSpace((cross (% (List %)))): Not documented!!!! ; compiling file "/var/aw/var/LatexWiki/RSPACE.NRLIB/RSPACE.lsp" (written 23 NOV 2014 02:23:48 AM):
; /var/aw/var/LatexWiki/RSPACE.NRLIB/RSPACE.fasl written ; compilation finished in 0:00:00.069 ------------------------------------------------------------------------ RealSpace is now explicitly exposed in frame initial RealSpace will be automatically loaded when needed from /var/aw/var/LatexWiki/RSPACE.NRLIB/RSPACE
INTVAL abbreviates package Interval ------------------------------------------------------------------------ initializing NRLIB INTVAL for Interval compiling into NRLIB INTVAL Local variable Rep type redefined: (Join (SetCategory) (CATEGORY domain (SIGNATURE construct ((Record (: lb F) (: ub F) (: tp (String))) F F (String))) (SIGNATURE ~= ((Boolean) (Record (: lb F) (: ub F) (: tp (String))) (Record (: lb F) (: ub F) (: tp (String))))) (SIGNATURE coerce ((OutputForm) (Record (: lb F) (: ub F) (: tp (String))))) (SIGNATURE elt (F (Record (: lb F) (: ub F) (: tp (String))) lb)) (SIGNATURE elt (F (Record (: lb F) (: ub F) (: tp (String))) ub)) (SIGNATURE elt ((String) (Record (: lb F) (: ub F) (: tp (String))) tp)) (SIGNATURE setelt! (F (Record (: lb F) (: ub F) (: tp (String))) lb F)) (SIGNATURE setelt! (F (Record (: lb F) (: ub F) (: tp (String))) ub F)) (SIGNATURE setelt! ((String) (Record (: lb F) (: ub F) (: tp (String))) tp (String))) (SIGNATURE copy ((Record (: lb F) (: ub F) (: tp (String))) (Record (: lb F) (: ub F) (: tp (String))))))) to (DirectProductCategory n (Expression (Integer))) compiling exported coerce : Tuple F -> $ Time: 0 SEC.
compiling exported coerce : List F -> $ Time: 0.01 SEC.
compiling exported coerce : $ -> List F Time: 0 SEC.
compiling exported coerce : $ -> OutputForm Time: 0.01 SEC.
compiling exported lb : $ -> F INTVAL;lb;$F;5 is replaced by QVELTx0 Time: 0 SEC.
compiling exported ub : $ -> F INTVAL;ub;$F;6 is replaced by QVELTx1 Time: 0 SEC.
compiling exported topology : $ -> OutputForm Time: 0.01 SEC.
compiling exported measure : $ -> F Time: 0 SEC.
compiling exported closedInterval : (F,F) -> $ INTVAL;closedInterval;2F$;9 is replaced by VECTORabclosed Time: 0 SEC.
compiling exported openInterval : (F,F) -> $ INTVAL;openInterval;2F$;10 is replaced by VECTORabopen Time: 0 SEC.
compiling exported leftOpenInterval : (F,F) -> $ INTVAL;leftOpenInterval;2F$;11 is replaced by VECTORableftOpen Time: 0 SEC.
compiling exported rightOpenInterval : (F,F) -> $ INTVAL;rightOpenInterval;2F$;12 is replaced by VECTORabrightOpen Time: 0 SEC.
compiling exported + : (F,$) -> $ Time: 0 SEC.
compiling exported * : (F,$) -> $ Time: 0 SEC.
(time taken in buildFunctor: 0)
;;; *** |Interval| REDEFINED
;;; *** |Interval| REDEFINED Time: 0 SEC.
Warnings: [1] coerce: tp has no value [2] topology: tp has no value [3] +: tp has no value [4] *: tp has no value
Cumulative Statistics for Constructor Interval Time: 0.03 seconds
finalizing NRLIB INTVAL Processing Interval for Browser database: --------constructor--------- --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce ((OutputForm) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce (% (List (Expression (Integer)))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce (% (Vector (Expression (Integer)))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce (% (List (Symbol))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce (% (Expression (Integer))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce ((List (Expression (Integer))) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce ((Vector (Expression (Integer))) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((dot ((Expression (Integer)) % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((dim ((NonNegativeInteger) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((+ (% % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((- (% % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((* (% (Expression (Integer)) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((* (% (NonNegativeInteger) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((* (% (PositiveInteger) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((* (% (Integer) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((/ (% % (Expression (Integer))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((# ((NonNegativeInteger) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((- (% %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((= ((Boolean) % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((~= ((Boolean) % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((unitVector (% (PositiveInteger)))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((elt ((Expression (Integer)) % (Integer)))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((eval (% % (Equation (Expression (Integer)))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((eval (% % (List (Equation (Expression (Integer))))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((every? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((map (% (Mapping (Expression (Integer)) (Expression (Integer))) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((member? ((Boolean) (Expression (Integer)) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((any? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((copy (% %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((D (% % (Symbol)))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((D (% % (Symbol) (NonNegativeInteger)))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((D (% % (List (Symbol))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((D (% % (List (Symbol)) (List (NonNegativeInteger))))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((dist ((Expression (Integer)) % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((norm ((Expression (Integer)) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((tprod ((Matrix (Expression (Integer))) % %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((cross (% (List %)))): Not documented!!!! --------constructor--------- --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce (% (Tuple F)))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce (% (List F)))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce ((List F) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((coerce ((OutputForm) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((closedInterval (% F F))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((openInterval (% F F))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((leftOpenInterval (% F F))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((rightOpenInterval (% F F))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((lb (F %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((ub (F %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((topology ((OutputForm) %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((measure (F %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((* (% F %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval((+ (% F %))): Not documented!!!! --->/usr/local/lib/fricas/target/x86_64-unknown-linux/../../src/algebra/INTRVL.spad-->Interval(): Spurious comments: \blankline \blankline ; compiling file "/var/aw/var/LatexWiki/INTVAL.NRLIB/INTVAL.lsp" (written 23 NOV 2014 02:23:48 AM):
; /var/aw/var/LatexWiki/INTVAL.NRLIB/INTVAL.fasl written ; compilation finished in 0:00:00.041 ------------------------------------------------------------------------ Interval is now explicitly exposed in frame initial Interval will be automatically loaded when needed from /var/aw/var/LatexWiki/INTVAL.NRLIB/INTVAL
CELL abbreviates domain Cell ------------------------------------------------------------------------ initializing NRLIB CELL for Cell compiling into NRLIB CELL Local variable Rep type redefined: (Join (MatrixCategory F (Vector F) (Vector F)) (CATEGORY domain (SIGNATURE diagonalMatrix ($ (Vector F))) (IF (has F (ConvertibleTo (InputForm))) (ATTRIBUTE (ConvertibleTo (InputForm))) noBranch) (IF (has F (Field)) (SIGNATURE inverse ((Union $ failed) $)) noBranch))) to (Join (SetCategory) (CATEGORY domain (SIGNATURE construct ((Record (: lb F) (: ub F) (: tp (String))) F F (String))) (SIGNATURE ~= ((Boolean) (Record (: lb F) (: ub F) (: tp (String))) (Record (: lb F) (: ub F) (: tp (String))))) (SIGNATURE coerce ((OutputForm) (Record (: lb F) (: ub F) (: tp (String))))) (SIGNATURE elt (F (Record (: lb F) (: ub F) (: tp (String))) lb)) (SIGNATURE elt (F (Record (: lb F) (: ub F) (: tp (String))) ub)) (SIGNATURE elt ((String) (Record (: lb F) (: ub F) (: tp (String))) tp)) (SIGNATURE setelt! (F (Record (: lb F) (: ub F) (: tp (String))) lb F)) (SIGNATURE setelt! (F (Record (: lb F) (: ub F) (: tp (String))) ub F)) (SIGNATURE setelt! ((String) (Record (: lb F) (: ub F) (: tp (String))) tp (String))) (SIGNATURE copy ((Record (: lb F) (: ub F) (: tp (String))) (Record (: lb F) (: ub F) (: tp (String))))))) compiling exported coerce : $ -> List Interval F Time: 0.01 SEC.
compiling exported coerce : List Interval F -> $ Time: 0.01 SEC.
compiling exported coerce : Matrix F -> $ Time: 0 SEC.
compiling exported coerce : $ -> OutputForm Time: 0 SEC.
compiling exported measure : $ -> F Time: 0 SEC.
(time taken in buildFunctor: 0)
;;; *** |Cell| REDEFINED
;;; *** |Cell| REDEFINED Time: 0 SEC.
Cumulative Statistics for Constructor Cell Time: 0.02 seconds
--------------non extending category---------------------- .. Cell(#1,#2) of cat (|Join| (|CoercibleTo| (|OutputForm|)) (CATEGORY |domain| (SIGNATURE |coerce| ($ (|Matrix| |#2|))) (SIGNATURE |coerce| ((|List| (|Interval| |#2|)) $)) (SIGNATURE |coerce| ($ (|List| (|Interval| |#2|)))) (SIGNATURE |coerce| ((|OutputForm|) $)) (SIGNATURE |measure| (|#2| $)))) has no (|MatrixCategory| |#2| (|Vector| |#2|) (|Vector| |#2|)) finalizing NRLIB CELL Processing Cell for Browser database: --------constructor--------- --->-->Cell((coerce ((OutputForm) %))): Not documented!!!! --->-->Cell((coerce (% (List (Expression (Integer)))))): Not documented!!!! --->-->Cell((coerce (% (Vector (Expression (Integer)))))): Not documented!!!! --->-->Cell((coerce (% (List (Symbol))))): Not documented!!!! --->-->Cell((coerce (% (Expression (Integer))))): Not documented!!!! --->-->Cell((coerce ((List (Expression (Integer))) %))): Not documented!!!! --->-->Cell((coerce ((Vector (Expression (Integer))) %))): Not documented!!!! --->-->Cell((dot ((Expression (Integer)) % %))): Not documented!!!! --->-->Cell((dim ((NonNegativeInteger) %))): Not documented!!!! --->-->Cell((+ (% % %))): Not documented!!!! --->-->Cell((- (% % %))): Not documented!!!! --->-->Cell((* (% (Expression (Integer)) %))): Not documented!!!! --->-->Cell((* (% (NonNegativeInteger) %))): Not documented!!!! --->-->Cell((* (% (PositiveInteger) %))): Not documented!!!! --->-->Cell((* (% (Integer) %))): Not documented!!!! --->-->Cell((/ (% % (Expression (Integer))))): Not documented!!!! --->-->Cell((# ((NonNegativeInteger) %))): Not documented!!!! --->-->Cell((- (% %))): Not documented!!!! --->-->Cell((= ((Boolean) % %))): Not documented!!!! --->-->Cell((~= ((Boolean) % %))): Not documented!!!! --->-->Cell((unitVector (% (PositiveInteger)))): Not documented!!!! --->-->Cell((elt ((Expression (Integer)) % (Integer)))): Not documented!!!! --->-->Cell((eval (% % (Equation (Expression (Integer)))))): Not documented!!!! --->-->Cell((eval (% % (List (Equation (Expression (Integer))))))): Not documented!!!! --->-->Cell((every? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->-->Cell((map (% (Mapping (Expression (Integer)) (Expression (Integer))) %))): Not documented!!!! --->-->Cell((member? ((Boolean) (Expression (Integer)) %))): Not documented!!!! --->-->Cell((any? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->-->Cell((copy (% %))): Not documented!!!! --->-->Cell((D (% % (Symbol)))): Not documented!!!! --->-->Cell((D (% % (Symbol) (NonNegativeInteger)))): Not documented!!!! --->-->Cell((D (% % (List (Symbol))))): Not documented!!!! --->-->Cell((D (% % (List (Symbol)) (List (NonNegativeInteger))))): Not documented!!!! --->-->Cell((dist ((Expression (Integer)) % %))): Not documented!!!! --->-->Cell((norm ((Expression (Integer)) %))): Not documented!!!! --->-->Cell((tprod ((Matrix (Expression (Integer))) % %))): Not documented!!!! --->-->Cell((cross (% (List %)))): Not documented!!!! --------constructor--------- --->-->Cell((coerce (% (Tuple F)))): Not documented!!!! --->-->Cell((coerce (% (List F)))): Not documented!!!! --->-->Cell((coerce ((List F) %))): Not documented!!!! --->-->Cell((coerce ((OutputForm) %))): Not documented!!!! --->-->Cell((closedInterval (% F F))): Not documented!!!! --->-->Cell((openInterval (% F F))): Not documented!!!! --->-->Cell((leftOpenInterval (% F F))): Not documented!!!! --->-->Cell((rightOpenInterval (% F F))): Not documented!!!! --->-->Cell((lb (F %))): Not documented!!!! --->-->Cell((ub (F %))): Not documented!!!! --->-->Cell((topology ((OutputForm) %))): Not documented!!!! --->-->Cell((measure (F %))): Not documented!!!! --->-->Cell((* (% F %))): Not documented!!!! --->-->Cell((+ (% F %))): Not documented!!!! --------constructor--------- --->-->Cell((coerce (% (Matrix F)))): Not documented!!!! --->-->Cell((coerce ((List (Interval F)) %))): Not documented!!!! --->-->Cell((coerce (% (List (Interval F))))): Not documented!!!! --->-->Cell((coerce ((OutputForm) %))): Not documented!!!! --->-->Cell((measure (F %))): Not documented!!!! --->-->Cell(): Spurious comments: \blankline \blankline --->-->Cell(): Spurious comments: \blankline \blankline ; compiling file "/var/aw/var/LatexWiki/CELL.NRLIB/CELL.lsp" (written 23 NOV 2014 02:23:48 AM):
; /var/aw/var/LatexWiki/CELL.NRLIB/CELL.fasl written ; compilation finished in 0:00:00.023 ------------------------------------------------------------------------ Cell is now explicitly exposed in frame initial Cell will be automatically loaded when needed from /var/aw/var/LatexWiki/CELL.NRLIB/CELL
SURF abbreviates domain Surface ------------------------------------------------------------------------ initializing NRLIB SURF for Surface compiling into NRLIB SURF Local variable Rep type redefined: (Join (SetCategory) (CATEGORY domain (SIGNATURE construct ((Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) (PositiveInteger) (PositiveInteger) (Mapping (RealSpace n) (RealSpace k)))) (SIGNATURE ~= ((Boolean) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))))) (SIGNATURE coerce ((OutputForm) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))))) (SIGNATURE elt ((PositiveInteger) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) kk)) (SIGNATURE elt ((PositiveInteger) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) nn)) (SIGNATURE elt ((Mapping (RealSpace n) (RealSpace k)) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) ff)) (SIGNATURE setelt! ((PositiveInteger) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) kk (PositiveInteger))) (SIGNATURE setelt! ((PositiveInteger) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) nn (PositiveInteger))) (SIGNATURE setelt! ((Mapping (RealSpace n) (RealSpace k)) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) ff (Mapping (RealSpace n) (RealSpace k)))) (SIGNATURE copy ((Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))) (Record (: kk (PositiveInteger)) (: nn (PositiveInteger)) (: ff (Mapping (RealSpace n) (RealSpace k)))))))) to (Join (MatrixCategory F (Vector F) (Vector F)) (CATEGORY domain (SIGNATURE diagonalMatrix ($ (Vector F))) (IF (has F (ConvertibleTo (InputForm))) (ATTRIBUTE (ConvertibleTo (InputForm))) noBranch) (IF (has F (Field)) (SIGNATURE inverse ((Union $ failed) $)) noBranch))) compiling exported coerce : RealSpace k -> RealSpace n -> $ Time: 0.01 SEC.
compiling exported coerce : $ -> OutputForm Time: 0 SEC.
compiling exported dim : $ -> PositiveInteger SURF;dim;$Pi;3 is replaced by QVELTS0 Time: 0 SEC.
compiling exported codim : $ -> PositiveInteger Time: 0 SEC.
compiling exported eval : ($,List Expression Integer) -> RealSpace n Time: 0.01 SEC.
compiling exported eval : ($,List Symbol) -> RealSpace n Time: 0 SEC.
compiling exported JacobianMatrix : ($,List Symbol) -> Matrix Expression Integer Time: 0.02 SEC.
compiling local vec2list : Vector Expression Integer -> List Expression Integer Time: 0 SEC.
compiling exported TangentSpace : ($,List Symbol) -> List RealSpace n Time: 0.01 SEC.
compiling exported CoTangentSpace : ($,List Symbol) -> List RealSpace n Time: 0.05 SEC.
compiling exported normal : ($,List Symbol) -> RealSpace n Time: 0 SEC.
(time taken in buildFunctor: 0)
;;; *** |Surface| REDEFINED
;;; *** |Surface| REDEFINED Time: 0 SEC.
Warnings: [1] coerce: kk has no value [2] coerce: nn has no value [3] dim: kk has no value [4] codim: nn has no value [5] codim: kk has no value [6] eval: ff has no value [7] JacobianMatrix: ff has no value
Cumulative Statistics for Constructor Surface Time: 0.10 seconds
finalizing NRLIB SURF Processing Surface for Browser database: --------constructor--------- --->-->Surface((coerce ((OutputForm) %))): Not documented!!!! --->-->Surface((coerce (% (List (Expression (Integer)))))): Not documented!!!! --->-->Surface((coerce (% (Vector (Expression (Integer)))))): Not documented!!!! --->-->Surface((coerce (% (List (Symbol))))): Not documented!!!! --->-->Surface((coerce (% (Expression (Integer))))): Not documented!!!! --->-->Surface((coerce ((List (Expression (Integer))) %))): Not documented!!!! --->-->Surface((coerce ((Vector (Expression (Integer))) %))): Not documented!!!! --->-->Surface((dot ((Expression (Integer)) % %))): Not documented!!!! --->-->Surface((dim ((NonNegativeInteger) %))): Not documented!!!! --->-->Surface((+ (% % %))): Not documented!!!! --->-->Surface((- (% % %))): Not documented!!!! --->-->Surface((* (% (Expression (Integer)) %))): Not documented!!!! --->-->Surface((* (% (NonNegativeInteger) %))): Not documented!!!! --->-->Surface((* (% (PositiveInteger) %))): Not documented!!!! --->-->Surface((* (% (Integer) %))): Not documented!!!! --->-->Surface((/ (% % (Expression (Integer))))): Not documented!!!! --->-->Surface((# ((NonNegativeInteger) %))): Not documented!!!! --->-->Surface((- (% %))): Not documented!!!! --->-->Surface((= ((Boolean) % %))): Not documented!!!! --->-->Surface((~= ((Boolean) % %))): Not documented!!!! --->-->Surface((unitVector (% (PositiveInteger)))): Not documented!!!! --->-->Surface((elt ((Expression (Integer)) % (Integer)))): Not documented!!!! --->-->Surface((eval (% % (Equation (Expression (Integer)))))): Not documented!!!! --->-->Surface((eval (% % (List (Equation (Expression (Integer))))))): Not documented!!!! --->-->Surface((every? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->-->Surface((map (% (Mapping (Expression (Integer)) (Expression (Integer))) %))): Not documented!!!! --->-->Surface((member? ((Boolean) (Expression (Integer)) %))): Not documented!!!! --->-->Surface((any? ((Boolean) (Mapping (Boolean) (Expression (Integer))) %))): Not documented!!!! --->-->Surface((copy (% %))): Not documented!!!! --->-->Surface((D (% % (Symbol)))): Not documented!!!! --->-->Surface((D (% % (Symbol) (NonNegativeInteger)))): Not documented!!!! --->-->Surface((D (% % (List (Symbol))))): Not documented!!!! --->-->Surface((D (% % (List (Symbol)) (List (NonNegativeInteger))))): Not documented!!!! --->-->Surface((dist ((Expression (Integer)) % %))): Not documented!!!! --->-->Surface((norm ((Expression (Integer)) %))): Not documented!!!! --->-->Surface((tprod ((Matrix (Expression (Integer))) % %))): Not documented!!!! --->-->Surface((cross (% (List %)))): Not documented!!!! --------constructor--------- --->-->Surface((coerce (% (Tuple F)))): Not documented!!!! --->-->Surface((coerce (% (List F)))): Not documented!!!! --->-->Surface((coerce ((List F) %))): Not documented!!!! --->-->Surface((coerce ((OutputForm) %))): Not documented!!!! --->-->Surface((closedInterval (% F F))): Not documented!!!! --->-->Surface((openInterval (% F F))): Not documented!!!! --->-->Surface((leftOpenInterval (% F F))): Not documented!!!! --->-->Surface((rightOpenInterval (% F F))): Not documented!!!! --->-->Surface((lb (F %))): Not documented!!!! --->-->Surface((ub (F %))): Not documented!!!! --->-->Surface((topology ((OutputForm) %))): Not documented!!!! --->-->Surface((measure (F %))): Not documented!!!! --->-->Surface((* (% F %))): Not documented!!!! --->-->Surface((+ (% F %))): Not documented!!!! --------constructor--------- --->-->Surface((coerce (% (Matrix F)))): Not documented!!!! --->-->Surface((coerce ((List (Interval F)) %))): Not documented!!!! --->-->Surface((coerce (% (List (Interval F))))): Not documented!!!! --->-->Surface((coerce ((OutputForm) %))): Not documented!!!! --->-->Surface((measure (F %))): Not documented!!!! --------constructor--------- --->-->Surface((coerce ((OutputForm) %))): Not documented!!!! --->-->Surface((coerce (% (Mapping (RealSpace n) (RealSpace k))))): Not documented!!!! --->-->Surface((dim ((PositiveInteger) %))): Not documented!!!! --->-->Surface((codim ((PositiveInteger) %))): Not documented!!!! --->-->Surface((eval ((RealSpace n) % (List (Expression (Integer)))))): Not documented!!!! --->-->Surface((eval ((RealSpace n) % (List (Symbol))))): Not documented!!!! --->-->Surface((JacobianMatrix ((Matrix (Expression (Integer))) % (List (Symbol))))): Not documented!!!! --->-->Surface((TangentSpace ((List (RealSpace n)) % (List (Symbol))))): Not documented!!!! --->-->Surface((CoTangentSpace ((List (RealSpace n)) % (List (Symbol))))): Not documented!!!! --->-->Surface((normal ((RealSpace n) % (List (Symbol))))): Not documented!!!! --->-->Surface(): Spurious comments: \blankline \blankline --->-->Surface(): Spurious comments: \blankline \blankline --->-->Surface(): Spurious comments: \spad{k}-surface \blankline ; compiling file "/var/aw/var/LatexWiki/SURF.NRLIB/SURF.lsp" (written 23 NOV 2014 02:23:48 AM):
; /var/aw/var/LatexWiki/SURF.NRLIB/SURF.fasl written ; compilation finished in 0:00:00.053 ------------------------------------------------------------------------ Surface is now explicitly exposed in frame initial Surface will be automatically loaded when needed from /var/aw/var/LatexWiki/SURF.NRLIB/SURF

fricas
R ==> EXPR INT
Type: Void
fricas
R2 ==> RealSpace(2)
Type: Void
fricas
R3 ==> RealSpace(3)
Type: Void
fricas
f: R2 -> R3
Type: Void
fricas
f(X) == [(1+X.2/2*cos(X.1/2))*cos(X.1),(1+X.2/2*cos(X.1/2))*sin(X.1),X.2/2*sin(X.1/2)::R]::R3
Type: Void
fricas
f

\label{eq1}\begin{array}{@{}l}
\displaystyle
f \  X \  = = \ {
\begin{array}{@{}l}
\displaystyle
{\left({
\begin{array}{@{}l}
\displaystyle
\left[{{\left(1 +{{{X \left({2}\right)}\over 2}\ {\cos \left({{X \left({1}\right)}\over 2}\right)}}\right)}\ {\cos \left({X \left({1}\right)}\right)}}, \: \right.
\
\
\displaystyle
\left.{{\left(1 +{{{X \left({2}\right)}\over 2}\ {\cos \left({{X \left({1}\right)}\over 2}\right)}}\right)}\ {\sin \left({X \left({1}\right)}\right)}}, \: \right.
\
\
\displaystyle
\left.{{{X \left({2}\right)}\over 2}\ {\left({\left(\sin \left({{X \left({1}\right)}\over 2}\right) \right)}\  : : \  \hbox{\axiomType{EXPR}\ } (\hbox{\axiomType{INT}\ }) \right)}}\right] 
(1)
Type: FunctionCalled?(f)
fricas
typeOf f

\label{eq2}\mbox{\rm (\hbox{\axiomType{RealSpace}\ } (2) - > \hbox{\axiomType{RealSpace}\ } (3))}(2)
Type: Type

Example Möbius strip as 2-surface

fricas
f([u,v::Symbol]::R2)
fricas
Compiling function f with type RealSpace(2) -> RealSpace(3)

\label{eq3}\left[{{{\left({v \ {\cos \left({u \over 2}\right)}}+ 2 \right)}\ {\cos \left({u}\right)}}\over 2}, \:{{{\left({v \ {\cos \left({u \over 2}\right)}}+ 2 \right)}\ {\sin \left({u}\right)}}\over 2}, \:{{v \ {\sin \left({u \over 2}\right)}}\over 2}\right](3)
Type: RealSpace?(3)
fricas
-- proxy error without tex off !!
fricas
)set output tex off
 
fricas
)set output algebra on
S:=f::Surface(2,3)
(9) 2-surface in R^3
Type: Surface(2,3)
fricas
dim S
(10) 2
Type: PositiveInteger?
fricas
eval(S,[u,v])
u u u (v cos(-) + 2)cos(u) (v cos(-) + 2)sin(u) v sin(-) 2 2 2 (11) [--------------------,--------------------,--------] 2 2 2
Type: RealSpace?(3)
fricas
ts:=TangentSpace(S,[u,v])
(12) [ u u (- 2v cos(-) - 4)sin(u) - v cos(u)sin(-) 2 2 [----------------------------------------, 4 u u u - v sin(-)sin(u) + (2v cos(-) + 4)cos(u) v cos(-) 2 2 2 ----------------------------------------, --------] 4 4 , u u u cos(-)cos(u) cos(-)sin(u) sin(-) 2 2 2 [------------,------------,------]] 2 2 2
Type: List(RealSpace?(3))
fricas
cs:=CoTangentSpace(S,[u,v])
(13) [ u 2 u 2 u u (v sin(-) + v cos(-) )sin(u) + (- 2v cos(-) - 4)cos(u)sin(-) 2 2 2 2 [-------------------------------------------------------------, u 2 u 2 u 2 u 2 (2v cos(-) + 4cos(-))sin(u) + (2v cos(-) + 4cos(-))cos(u) 2 2 2 2 u u u 2 u 2 (- 2v cos(-) - 4)sin(-)sin(u) - v cos(u)sin(-) - v cos(-) cos(u) 2 2 2 2 -----------------------------------------------------------------, 1] u 2 u 2 u 2 u 2 (2v cos(-) + 4cos(-))sin(u) + (2v cos(-) + 4cos(-))cos(u) 2 2 2 2 ]
Type: List(RealSpace?(3))
fricas
ns:=normal(S,[u,v])
(14) [ u 2 u 2 u u (v sin(-) + v cos(-) )sin(u) + (- 2v cos(-) - 4)cos(u)sin(-) 2 2 2 2 / u 2 u 2 u 2 u 2 ((2v cos(-) + 4cos(-))sin(u) + (2v cos(-) + 4cos(-))cos(u) ) 2 2 2 2 * ROOT 2 u 4 u 3 u 2 2 2 u 4 (4v cos(-) + 16v cos(-) + 16cos(-) )sin(u) + v sin(-) 2 2 2 2 + 2 u 2 u u 2 (6v cos(-) + 16v cos(-) + 16)sin(-) 2 2 2 + 2 u 4 u 3 u 2 2 2 u 4 (4v cos(-) + 16v cos(-) + 16cos(-) )cos(u) + v cos(-) 2 2 2 2 / 2 u 4 u 3 u 2 2 (4v cos(-) + 16v cos(-) + 16cos(-) )sin(u) 2 2 2 + 2 u 4 u 3 u 2 2 (4v cos(-) + 16v cos(-) + 16cos(-) )cos(u) 2 2 2 ,
u u u 2 u 2 (- 2v cos(-) - 4)sin(-)sin(u) - v cos(u)sin(-) - v cos(-) cos(u) 2 2 2 2 / u 2 u 2 u 2 u 2 ((2v cos(-) + 4cos(-))sin(u) + (2v cos(-) + 4cos(-))cos(u) ) 2 2 2 2 * ROOT 2 u 4 u 3 u 2 2 2 u 4 (4v cos(-) + 16v cos(-) + 16cos(-) )sin(u) + v sin(-) 2 2 2 2 + 2 u 2 u u 2 (6v cos(-) + 16v cos(-) + 16)sin(-) 2 2 2 + 2 u 4 u 3 u 2 2 2 u 4 (4v cos(-) + 16v cos(-) + 16cos(-) )cos(u) + v cos(-) 2 2 2 2 / 2 u 4 u 3 u 2 2 (4v cos(-) + 16v cos(-) + 16cos(-) )sin(u) 2 2 2 + 2 u 4 u 3 u 2 2 (4v cos(-) + 16v cos(-) + 16cos(-) )cos(u) 2 2 2 ,
1 / ROOT 2 u 4 u 3 u 2 2 2 u 4 (4v cos(-) + 16v cos(-) + 16cos(-) )sin(u) + v sin(-) 2 2 2 2 + 2 u 2 u u 2 (6v cos(-) + 16v cos(-) + 16)sin(-) 2 2 2 + 2 u 4 u 3 u 2 2 2 u 4 (4v cos(-) + 16v cos(-) + 16cos(-) )cos(u) + v cos(-) 2 2 2 2 / 2 u 4 u 3 u 2 2 (4v cos(-) + 16v cos(-) + 16cos(-) )sin(u) 2 2 2 + 2 u 4 u 3 u 2 2 (4v cos(-) + 16v cos(-) + 16cos(-) )cos(u) 2 2 2 ]
Type: RealSpace?(3)

Cross product in R^n

fricas
X:=[a,b,c,d::R]::RealSpace(4)
(15) [a,b,c,d]
Type: RealSpace?(4)
fricas
Y:=[p,q,r,s::R]::RealSpace(4)
(16) [p,q,r,s]
Type: RealSpace?(4)
fricas
Z:=[t,u,v,w::R]::RealSpace(4)
(17) [t,u,v,w]
Type: RealSpace?(4)
fricas
C:=cross [X,Y,Z]
(18) [(b r - c q)w + (- b s + d q)v + (c s - d r)u, (- a r + c p)w + (a s - d p)v + (- c s + d r)t, (a q - b p)w + (- a s + d p)u + (b s - d q)t, (- a q + b p)v + (a r - c p)u + (- b r + c q)t]
Type: RealSpace?(4)
fricas
[dot(C,v) for v in [X,Y,Z]]
(19) [0,0,0]
Type: List(Expression(Integer))