This file is indexed.

/usr/share/axiom-20170501/src/algebra/FS2.spad is in axiom-source 20170501-3.

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
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
)abbrev package FS2 FunctionSpaceFunctions2
++ Author: Manuel Bronstein
++ Date Created: 22 March 1988
++ Date Last Updated: 3 May 1994
++ Description:
++ Lifting of maps to function spaces
++ This package allows a mapping R -> S to be lifted to a mapping
++ from a function space over R to a function space over S;

FunctionSpaceFunctions2(R, A, S, B) : SIG == CODE where
  R : Join(Ring, OrderedSet)
  A : FunctionSpace R
  S : Join(Ring, OrderedSet)
  B : FunctionSpace S

  K  ==> Kernel A
  P  ==> SparseMultivariatePolynomial(R, K)

  SIG ==> with

    map : (R -> S, A) -> B
      ++ map(f, a) applies f to all the constants in R appearing in \spad{a}.

  CODE ==> add

    smpmap: (R -> S, P) -> B

    smpmap(fn, p) ==
      map(x+->map(z+->map(fn, z),x)$ExpressionSpaceFunctions2(A,B),
          y+->fn(y)::B,p)_
           $PolynomialCategoryLifting(IndexedExponents K, K, R, P, B)

    if R has IntegralDomain then
      if S has IntegralDomain then

        map(f, x) == smpmap(f, numer x) / smpmap(f, denom x)

      else

        map(f, x) == smpmap(f, numer x) * (recip(smpmap(f, denom x))::B)

    else

      map(f, x) == smpmap(f, numer x)