This file is indexed.

/usr/share/axiom-20170501/src/algebra/PRSPCAT.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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
)abbrev category PRSPCAT ProjectiveSpaceCategory
++ Author: Gaetan Hache
++ Date Created: 17 nov 1992
++ Date Last Updated: May 2010 by Tim Daly
++ References:
++ Hold11 Algebraic Geometry Codes
++ Description:
++ This is part of the PAFF package, related to projective space.

ProjectiveSpaceCategory(K) : Category == SIG where
  K : Field

  LIST ==> List
  INT  ==> Integer
  NNI  ==> NonNegativeInteger

  SIG ==> SetCategoryWithDegree with

    lastNonNul : % -> INT

    homogenize : (%,INT) -> %
      ++ homogenize the point according to the coordinate specified 
      ++ by the integer
    
    projectivePoint : LIST(K) -> %
      ++ projectivePoint creates a projective point from a list
   
    definingField : % -> K
    
    coerce : % -> List(K)
      ++ coerce a a projective point list of K

    coerce : LIST(K) -> %
      ++ coerce a list of K to a projective point.
      
    orbit : % -> LIST %
      ++ orbit(p) returns the orbit of the point p according to the 
      ++ characteristic of K, that is, for q= char K, 
      ++ orbit(p) = \{ p, p**q, p**(q**2), p**(q**3), ..... \}

    orbit : (%,NNI) -> LIST %
      ++ orbit(p,n) returns the orbit of the point p according to n, that is
      ++ orbit(p,n) = \{ p, p**n, p**(n**2), p**(n**3), ..... \}

    conjugate : (%,NNI) -> %
      ++ conjugate(p,n) returns p**n, that is all the coordinates of p 
      ++ to the power of n

    conjugate : % -> %
      ++ conjugate(p) returns conjugate(p,n) where n is the 
      ++ characteristic of the ground field.

    removeConjugate : (LIST(%),NNI) -> LIST(%)
      ++ removeConjugate(lp,n) returns a list of points such that no points
      ++ in the list is the conjugate (according to n) of another point.

    removeConjugate : LIST(%)  -> LIST(%)
      ++ removeConjugate(lp) returns removeConjugate(lp,n)
      ++ where n is the characteristic of the ground field.

    rational? : (%,NNI) -> Boolean
      ++ rational?(p,n) test if the point is rational according to n.

    rational? : % -> Boolean
      ++ rational?(p) test if the point is rational according to the
      ++ characteristic of the ground field.

    homogenize : % -> %
      ++ homogenize(pt) the point according to the coordinate 
      ++ which is the last non null.

    lastNonNull : % -> INT
      ++ lastNonNull returns the integer corresponding to the last 
      ++ non null coordinates.

    list : % -> LIST(K)
      ++ list returns the list of the coordinates

    elt : (%,INT) -> K
      ++ elt returns the value of a specified coordinates

    setelt : (%,INT,K) -> K
      ++ setelt sets the value of a specified coordinates

    pointValue : % -> LIST(K)
      ++ pointValue returns the coordinates of the point or of the point 
      ++ of origin that represent an infinitly close point