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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
\begin{patch}{UniversalSegmentXmpPagePatch1}
\begin{paste}{UniversalSegmentXmpPageFull1}{UniversalSegmentXmpPageEmpty1}
\pastebutton{UniversalSegmentXmpPageFull1}{\hidepaste}
\tab{5}\spadcommand{pints := 1..\bound{pints }}
\indentrel{3}\begin{verbatim}
(1) 1..
Type: UniversalSegment PositiveInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty1}
\begin{paste}{UniversalSegmentXmpPageEmpty1}{UniversalSegmentXmpPagePatch1}
\pastebutton{UniversalSegmentXmpPageEmpty1}{\showpaste}
\tab{5}\spadcommand{pints := 1..\bound{pints }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch2}
\begin{paste}{UniversalSegmentXmpPageFull2}{UniversalSegmentXmpPageEmpty2}
\pastebutton{UniversalSegmentXmpPageFull2}{\hidepaste}
\tab{5}\spadcommand{nevens := (0..) by -2\bound{nevens }}
\indentrel{3}\begin{verbatim}
(2) 0.. by - 2
Type: UniversalSegment NonNegativeInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty2}
\begin{paste}{UniversalSegmentXmpPageEmpty2}{UniversalSegmentXmpPagePatch2}
\pastebutton{UniversalSegmentXmpPageEmpty2}{\showpaste}
\tab{5}\spadcommand{nevens := (0..) by -2\bound{nevens }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch3}
\begin{paste}{UniversalSegmentXmpPageFull3}{UniversalSegmentXmpPageEmpty3}
\pastebutton{UniversalSegmentXmpPageFull3}{\hidepaste}
\tab{5}\spadcommand{useg: UniversalSegment(Integer) := 3..10\bound{useg }}
\indentrel{3}\begin{verbatim}
(3) 3..10
Type: UniversalSegment Integer
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty3}
\begin{paste}{UniversalSegmentXmpPageEmpty3}{UniversalSegmentXmpPagePatch3}
\pastebutton{UniversalSegmentXmpPageEmpty3}{\showpaste}
\tab{5}\spadcommand{useg: UniversalSegment(Integer) := 3..10\bound{useg }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch4}
\begin{paste}{UniversalSegmentXmpPageFull4}{UniversalSegmentXmpPageEmpty4}
\pastebutton{UniversalSegmentXmpPageFull4}{\hidepaste}
\tab{5}\spadcommand{hasHi pints\free{pints }}
\indentrel{3}\begin{verbatim}
(4) false
Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty4}
\begin{paste}{UniversalSegmentXmpPageEmpty4}{UniversalSegmentXmpPagePatch4}
\pastebutton{UniversalSegmentXmpPageEmpty4}{\showpaste}
\tab{5}\spadcommand{hasHi pints\free{pints }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch5}
\begin{paste}{UniversalSegmentXmpPageFull5}{UniversalSegmentXmpPageEmpty5}
\pastebutton{UniversalSegmentXmpPageFull5}{\hidepaste}
\tab{5}\spadcommand{hasHi nevens\free{nevens }}
\indentrel{3}\begin{verbatim}
(5) false
Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty5}
\begin{paste}{UniversalSegmentXmpPageEmpty5}{UniversalSegmentXmpPagePatch5}
\pastebutton{UniversalSegmentXmpPageEmpty5}{\showpaste}
\tab{5}\spadcommand{hasHi nevens\free{nevens }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch6}
\begin{paste}{UniversalSegmentXmpPageFull6}{UniversalSegmentXmpPageEmpty6}
\pastebutton{UniversalSegmentXmpPageFull6}{\hidepaste}
\tab{5}\spadcommand{hasHi useg\free{useg }}
\indentrel{3}\begin{verbatim}
(6) true
Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty6}
\begin{paste}{UniversalSegmentXmpPageEmpty6}{UniversalSegmentXmpPagePatch6}
\pastebutton{UniversalSegmentXmpPageEmpty6}{\showpaste}
\tab{5}\spadcommand{hasHi useg\free{useg }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch7}
\begin{paste}{UniversalSegmentXmpPageFull7}{UniversalSegmentXmpPageEmpty7}
\pastebutton{UniversalSegmentXmpPageFull7}{\hidepaste}
\tab{5}\spadcommand{expand pints\free{pints }}
\indentrel{3}\begin{verbatim}
(7) [1,2,3,4,5,6,7,8,9,10,...]
Type: Stream Integer
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty7}
\begin{paste}{UniversalSegmentXmpPageEmpty7}{UniversalSegmentXmpPagePatch7}
\pastebutton{UniversalSegmentXmpPageEmpty7}{\showpaste}
\tab{5}\spadcommand{expand pints\free{pints }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch8}
\begin{paste}{UniversalSegmentXmpPageFull8}{UniversalSegmentXmpPageEmpty8}
\pastebutton{UniversalSegmentXmpPageFull8}{\hidepaste}
\tab{5}\spadcommand{expand nevens\free{nevens }}
\indentrel{3}\begin{verbatim}
(8) [0,- 2,- 4,- 6,- 8,- 10,- 12,- 14,- 16,- 18,...]
Type: Stream Integer
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty8}
\begin{paste}{UniversalSegmentXmpPageEmpty8}{UniversalSegmentXmpPagePatch8}
\pastebutton{UniversalSegmentXmpPageEmpty8}{\showpaste}
\tab{5}\spadcommand{expand nevens\free{nevens }}
\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPagePatch9}
\begin{paste}{UniversalSegmentXmpPageFull9}{UniversalSegmentXmpPageEmpty9}
\pastebutton{UniversalSegmentXmpPageFull9}{\hidepaste}
\tab{5}\spadcommand{expand [1, 3, 10..15, 100..]}
\indentrel{3}\begin{verbatim}
(9) [1,3,10,11,12,13,14,15,100,101,...]
Type: Stream Integer
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}
\begin{patch}{UniversalSegmentXmpPageEmpty9}
\begin{paste}{UniversalSegmentXmpPageEmpty9}{UniversalSegmentXmpPagePatch9}
\pastebutton{UniversalSegmentXmpPageEmpty9}{\showpaste}
\tab{5}\spadcommand{expand [1, 3, 10..15, 100..]}
\end{paste}\end{patch}
|