This file is indexed.

/usr/share/axiom-20170501/src/algebra/MAPPKG2.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
)abbrev package MAPPKG2 MappingPackage2
++ Description: 
++ Various Currying operations.

MappingPackage2(A,C) : SIG == CODE where
  A : SetCategory
  C : SetCategory

  NNI ==> NonNegativeInteger
 
  SIG ==> with

    const : C -> (A ->C)
      ++\spad{const c} is a function which produces \spad{c} when
      ++ applied to its argument.
 
    curry : (A ->C, A) -> (()->C)
      ++\spad{cu(f,a)} is the function \spad{g}
      ++ such that \spad{g ()= f a}.

    constant : (()->C) -> (A ->C)
      ++\spad{vu(f)} is the function \spad{g}
      ++ such that \spad{g a= f ()}.
 
    diag : ((A,A)->C) -> (A->C)
      ++\spad{diag(f)} is the function \spad{g}
      ++ such that \spad{g a = f(a,a)}.
 
  CODE ==> add
 
    MappingPackageInternalHacks2(A, C)
 
    a: A
    c: C
    faa:  A -> A
    f0c:  ()-> C
    fac:  A -> C
    faac: (A,A)->C
 
    const c == (a1:A):C +-> arg2(a1, c)

    curry(fac, a) == fac a

    constant f0c == (a1:A):C +-> arg2(a1, f0c())

    diag faac == (a1:A):C +-> faac(a1, a1)