This file is indexed.

/usr/share/axiom-20170501/src/algebra/UP.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
)abbrev domain UP UnivariatePolynomial
++ Author: Mark Botch
++ Description:
++ This domain represents univariate polynomials in some symbol
++ over arbitrary (not necessarily commutative) coefficient rings.
++ The representation is sparse
++ in the sense that only non-zero terms are represented.
++ Note that if the coefficient ring is a field, then this domain 
++ forms a euclidean domain.

UnivariatePolynomial(x,R) : SIG == CODE where
  x : Symbol
  R : Ring

  SIG ==> UnivariatePolynomialCategory(R) with

    coerce : Variable(x) -> %
      ++ coerce(x) converts the variable x to a univariate polynomial.

    fmecg : (%,NonNegativeInteger,R,%) -> %
      ++ fmecg(p1,e,r,p2) finds x : p1 - r * x**e * p2

  CODE ==> SparseUnivariatePolynomial(R) add

    Rep:=SparseUnivariatePolynomial(R)

    coerce(p:%):OutputForm  == outputForm(p, outputForm x)

    coerce(v:Variable(x)):% == monomial(1, 1)