This file is indexed.

/usr/share/axiom-20170501/src/algebra/SEGXCAT.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
)abbrev category SEGXCAT SegmentExpansionCategory
++ Author:  Stephen M. Watt
++ Date Created: June 5, 1991
++ Description:
++ This category provides an interface for expanding segments to
++ a stream of elements.

SegmentExpansionCategory(S,L) : Category == SIG where
  S : OrderedRing
  L : StreamAggregate(S)

  SIG ==> SegmentCategory(S) with

    expand : List % -> L
      ++ expand(l) creates a new value of type L in which each segment
      ++ \spad{l..h by k} is replaced with \spad{l, l+k, ... lN},
      ++ where \spad{lN <= h < lN+k}.
      ++ For example, \spad{expand [1..4, 7..9] = [1,2,3,4,7,8,9]}.

    expand : % -> L
      ++ expand(l..h by k) creates value of type L with elements
      ++ \spad{l, l+k, ... lN} where \spad{lN <= h < lN+k}.
      ++ For example, \spad{expand(1..5 by 2) = [1,3,5]}.

    map : (S -> S, %) -> L
      ++ map(f,l..h by k) produces a value of type L by applying f
      ++ to each of the succesive elements of the segment, that is,
      ++ \spad{[f(l), f(l+k), ..., f(lN)]}, where \spad{lN <= h < lN+k}.