2
%%Creator: optima:sw (Sun Wu)
3
%%Title: stdin (ditroff)
4
%%CreationDate: Thu Jan 9 13:58:28 1992
6
% Start of psdit.pro -- prolog for ditroff translator
7
% Copyright (c) 1985,1987 Adobe Systems Incorporated. All Rights Reserved.
8
% GOVERNMENT END USERS: See Notice file in TranScript library directory
9
% -- probably /usr/lib/ps/Notice
10
% RCS: $Header: psdit.pro,v 2.2 87/11/17 16:40:42 byron Rel $
11
% Psfig RCSID $Header: psdit.pro,v 1.5 88/01/04 17:48:22 trevor Exp $
12
/$DITroff 180 dict def $DITroff begin
14
/DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap
15
currentlinejoin currentdash currentgray currentmiterlimit ] cvx def
20
userdict maxlength dict begin
21
currentpoint transform
23
DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap
24
setlinewidth setmatrix
32
/y exch 72 mul resolution div def
33
/x exch 72 mul resolution div def
35
currentpoint /cy exch def /cx exch def
37
/sx x urx llx sub div def % scaling for x
38
/sy y ury lly sub div def % scaling for y
40
sx sy scale % scale by (sx,sy)
43
cy sy div ury sub translate
45
/DefFigCTM matrix currentmatrix def
55
DocumentInitState setmiterlimit setgray setdash
56
setlinejoin setlinecap setlinewidth setmatrix
65
% Args are llx lly urx ury (in figure coordinates)
77
% doclip, if called, will always be just after a `startfig'
78
/doclip { llx lly urx ury clipFig } def
80
end SavedState restore
83
% Push details about the enviornment on the stack.
84
fontnum fontsize fontslant fontheight
86
mh my resolution slotno currentpoint
87
pagesave restore gsave
91
/slotno exch def /resolution exch def /my exch def
95
/fontslant exch def /fontsize exch def /fontnum exch def
100
%% end XMOD additions
102
/fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def
103
/xi {0 72 11 mul translate 72 resolution div dup neg scale 0 0 moveto
104
/fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def F
105
/pagesave save def}def
106
/PB{save /psv exch def currentpoint translate
107
resolution 72 div dup neg scale 0 0 moveto}def
109
/m1 matrix def /m2 matrix def /m3 matrix def /oldmat matrix def
110
/tan{dup sin exch cos div}bind def
111
/point{resolution 72 div mul}bind def
112
/dround {transform round exch round exch itransform}bind def
113
/xT{/devname exch def}def
114
/xr{/mh exch def /my exch def /resolution exch def}def
116
/xs{docsave restore end}def
118
/xf{/fontname exch def /slotno exch def fontnames slotno get fontname eq not
119
{fonts slotno fontname findfont put fontnames slotno fontname put}if}def
120
/xH{/fontheight exch def F}bind def
121
/xS{/fontslant exch def F}bind def
122
/s{/fontsize exch def /fontheight fontsize def F}bind def
123
/f{/fontnum exch def F}bind def
124
/F{fontheight 0 le {/fontheight fontsize def}if
125
fonts fontnum get fontsize point 0 0 fontheight point neg 0 0 m1 astore
126
fontslant 0 ne{1 0 fontslant tan 1 0 0 m2 astore m3 concatmatrix}if
127
makefont setfont .04 fontsize point mul 0 dround pop setlinewidth}bind def
128
/X{exch currentpoint exch pop moveto show}bind def
129
/N{3 1 roll moveto show}bind def
130
/Y{exch currentpoint pop exch moveto show}bind def
132
/ditpush{}def/ditpop{}def
133
/AX{3 -1 roll currentpoint exch pop moveto 0 exch ashow}bind def
134
/AN{4 2 roll moveto 0 exch ashow}bind def
135
/AY{3 -1 roll currentpoint pop exch moveto 0 exch ashow}bind def
136
/AS{0 exch ashow}bind def
137
/MX{currentpoint exch pop moveto}bind def
138
/MY{currentpoint pop exch moveto}bind def
139
/MXY /moveto load def
140
/cb{pop}def % action on unknown char -- nothing for now
142
/p{pop showpage pagesave restore /pagesave save def}def
143
/abspoint{currentpoint exch pop add exch currentpoint pop add exch}def
144
/dstroke{currentpoint stroke moveto}bind def
145
/Dl{2 copy gsave rlineto stroke grestore rmoveto}bind def
146
/arcellipse{oldmat currentmatrix pop
147
currentpoint translate 1 diamv diamh div scale /rad diamh 2 div def
148
rad 0 rad -180 180 arc oldmat setmatrix}def
149
/Dc{gsave dup /diamv exch def /diamh exch def arcellipse dstroke
150
grestore diamh 0 rmoveto}def
151
/De{gsave /diamv exch def /diamh exch def arcellipse dstroke
152
grestore diamh 0 rmoveto}def
153
/Da{currentpoint /by exch def /bx exch def /fy exch def /fx exch def
154
/cy exch def /cx exch def /rad cx cx mul cy cy mul add sqrt def
155
/ang1 cy neg cx neg atan def /ang2 fy fx atan def cx bx add cy by add
156
2 copy rad ang1 ang2 arcn stroke exch fx add exch fy add moveto}def
157
/Barray 200 array def % 200 values in a wiggle
159
/D~~{counttomark Barray exch 0 exch getinterval astore /Bcontrol exch def pop
160
/Blen Bcontrol length def Blen 4 ge Blen 2 mod 0 eq and
161
{Bcontrol 0 get Bcontrol 1 get abspoint /Ycont exch def /Xcont exch def
162
Bcontrol 0 2 copy get 2 mul put Bcontrol 1 2 copy get 2 mul put
163
Bcontrol Blen 2 sub 2 copy get 2 mul put
164
Bcontrol Blen 1 sub 2 copy get 2 mul put
165
/Ybi /Xbi currentpoint 3 1 roll def def 0 2 Blen 4 sub
167
Bcontrol i get 3 div Bcontrol i 1 add get 3 div
168
Bcontrol i get 3 mul Bcontrol i 2 add get add 6 div
169
Bcontrol i 1 add get 3 mul Bcontrol i 3 add get add 6 div
170
/Xbi Xcont Bcontrol i 2 add get 2 div add def
171
/Ybi Ycont Bcontrol i 3 add get 2 div add def
172
/Xcont Xcont Bcontrol i 2 add get add def
173
/Ycont Ycont Bcontrol i 3 add get add def
174
Xbi currentpoint pop sub Ybi currentpoint exch pop sub rcurveto
177
/ditstart{$DITroff begin
178
/nfonts 60 def % NFONTS makedev/ditroff dependent!
179
/fonts[nfonts{0}repeat]def
180
/fontnames[nfonts{()}repeat]def
185
/oc {/pswid exch def /cc exch def /name exch def
186
/ditwid pswid fontsize mul resolution mul 72000 div def
187
/ditsiz fontsize resolution mul 72 div def
188
ocprocs name known{ocprocs name get exec}{name cb}
190
/fractm [.65 0 0 .6 0 0] def
192
{/fden exch def /fnum exch def gsave /cf currentfont def
193
cf fractm makefont setfont 0 .3 dm 2 copy neg rmoveto
194
fnum show rmoveto currentfont cf setfont(\244)show setfont fden show
195
grestore ditwid 0 rmoveto} def
196
/oce {grestore ditwid 0 rmoveto}def
198
/ocprocs 50 dict def ocprocs begin
199
(14){(1)(4)fraction}def
200
(12){(1)(2)fraction}def
201
(34){(3)(4)fraction}def
202
(13){(1)(3)fraction}def
203
(23){(2)(3)fraction}def
204
(18){(1)(8)fraction}def
205
(38){(3)(8)fraction}def
206
(58){(5)(8)fraction}def
207
(78){(7)(8)fraction}def
208
(sr){gsave .05 dm .16 dm rmoveto(\326)show oce}def
209
(is){gsave 0 .15 dm rmoveto(\362)show oce}def
210
(->){gsave 0 .02 dm rmoveto(\256)show oce}def
211
(<-){gsave 0 .02 dm rmoveto(\254)show oce}def
212
(==){gsave 0 .05 dm rmoveto(\272)show oce}def
214
% DIThacks fonts for some special chars
217
/FontName /DIThacks def
218
/FontMatrix [.001 0.0 0.0 .001 0.0 0.0] def
219
/FontBBox [-220 -280 900 900] def% a lie but ...
220
/Encoding 256 array def
221
0 1 255{Encoding exch /.notdef put}for
223
dup 8#040/space put %space
224
dup 8#110/rc put %right ceil
225
dup 8#111/lt put %left top curl
226
dup 8#112/bv put %bold vert
227
dup 8#113/lk put %left mid curl
228
dup 8#114/lb put %left bot curl
229
dup 8#115/rt put %right top curl
230
dup 8#116/rk put %right mid curl
231
dup 8#117/rb put %right bot curl
232
dup 8#120/rf put %right floor
233
dup 8#121/lf put %left floor
234
dup 8#122/lc put %left ceil
235
dup 8#140/sq put %square
236
dup 8#141/bx put %box
237
dup 8#142/ci put %circle
238
dup 8#143/br put %box rule
239
dup 8#144/rn put %root extender
240
dup 8#145/vr put %vertical rule
241
dup 8#146/ob put %outline bullet
242
dup 8#147/bu put %bullet
243
dup 8#150/ru put %rule
244
dup 8#151/ul put %underline
248
/cc exch def /fd exch def
249
/charname fd /Encoding get cc get def
250
/charwid fd /Metrics get charname get def
251
/charproc fd /CharProcs get charname get def
252
charwid 0 fd /FontBBox get aload pop setcachedevice
254
newpath 0 0 moveto gsave charproc grestore
256
/BuildChar load 0 DITfd put
258
/CharProcs 50 dict def
263
/rn{0 750 moveto 500 0 rls}def
264
/vr{20 800 moveto 0 -770 rls}def
265
/bv{20 800 moveto 0 -1000 rls}def
266
/br{20 770 moveto 0 -1040 rls}def
267
/ul{0 -250 moveto 500 0 rls}def
268
/ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def
269
/bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def
270
/sq{80 0 rmoveto currentpoint dround newpath moveto
271
640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def
272
/bx{80 0 rmoveto currentpoint dround newpath moveto
273
640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def
274
/ci{355 333 rmoveto currentpoint newpath 333 0 360 arc
275
50 setlinewidth stroke}def
277
/lt{20 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def
278
/lb{20 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def
279
/rt{20 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def
280
/rb{20 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def
281
/lk{20 800 moveto 20 300 -280 300 s4 arcto pop pop 1000 sub
282
currentpoint stroke moveto
283
20 300 4 2 roll s4 a4p 20 -200 lineto stroke}def
284
/rk{20 800 moveto 20 300 320 300 s4 arcto pop pop 1000 sub
285
currentpoint stroke moveto
286
20 300 4 2 roll s4 a4p 20 -200 lineto stroke}def
287
/lf{20 800 moveto 0 -1000 rlineto s4 0 rls}def
288
/rf{20 800 moveto 0 -1000 rlineto s4 neg 0 rls}def
289
/lc{20 -200 moveto 0 1000 rlineto s4 0 rls}def
290
/rc{20 -200 moveto 0 1000 rlineto s4 neg 0 rls}def
293
/Metrics 50 dict def Metrics begin
320
/s2 500 def /s4 250 def /s3 333 def
321
/a4p{arcto pop pop pop pop}def
323
/rls{rlineto stroke}def
324
/currx{currentpoint pop}def
325
/dround{transform round exch round exch itransform} def
328
/DIThacks exch definefont pop
334
2(Times-Italic)xf 2 f
336
4(Times-BoldItalic)xf 4 f
338
6(Helvetica-Bold)xf 6 f
340
8(Courier-Bold)xf 8 f
357
2616(PATTERN-MATCHING)X
361
2147 1000(\(Preliminary)N
371
1953 1384(Department)N
375
2139 1504(University)N
385
2245(udi\)@cs.arizona.edu)X
466
648 2887(applications.)N
550
1280(string-searching)X
556
2527 0.3125(occurrences)AX
686
2759(Knuth-Morris-Pratt)X
691
648 4304(Boyer-Moore)N
814
3225(string-matching)X
912
648 5423(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
928
2625(DCR-8451397\),)X
985
1803(string-matching)X
1056
648 1379(anonymous)N
1059
1376(cs.arizona.edu)X
1061
2010(192.12.69.5\))X
1063
2560 0.1912(agrep/agrep.tar.Z.)AX
1071
648 1489(SparcStation)N
1118
2112(signi\256cant)X
1177
3155(multi-pattern)X
1190
2343(substitutions)X
1205
1728(substitutions)X
1262
1815(string-matching)X
1274
648 2732([Ha89]\),)N
1289
3635(string-matching)X
1296
1706 0.3125(occurrences)AX
1307
3580(bibliographic)X
1330
648 3062(\256le.\))N
1427
2776(indispensable)X
1447
2249(introduction,)X
1451
3166(signi\256cant)X
1501
2350(substitutions,)X
1510
848 4655(different)N
1516
2186(substitutions.)X
1549
1266(\(deletions\);)X
1644
2201('burger,pizza')X
1701
1752('<CACM>;TheAuthor;Curriculum;<198[5-9]>')X
1720
648 1159(curriculum.)N
1729
2199(sub-patterns,)X
1864
2376(/usr/dict/web2)X
1879
2941(/usr/dict/words)X
1894
2518 0.3250(bureaucracy)AX
1915
2907 0.3125(occurrences)AX
1917
3421 0.4062(breacracy)AX
1929
1988(squireocracy\).)X
1958
2184 0.2404(\(squireocracy\))AX
1970
648 3128(beginning)N
2042
984('<pizza>;<great>;Manbar')X
2049
997('\\.gov;October;surprise')X
2067
1554 0.3750(character\))AX
2110
2373('\303routine1')X
2133
3215('\303routine1')X
2137
648 4844(routine\).)N
2154
648 4954(followed\).)N
2234
2168(/usr/dict/words.)X
2249
1479 0.3375(character.\))AX
2300
1092('a#b#c#d#e#f#g#h#i#j')X
2301
2154(/usr/dict/words)X
2340
648 1126(something..)N
2401
648 1883(patterns,)N
2417
648 1993(multi-patterns,)N
2491
3400 0.3125(occurrences)AX
2568
1911 2906(contains)N
2706
648 3346(summarized)N
2709
792 3456(Initially,)N
2781
1317 3710(otherwise)N
3116
2733(substitution.)X
3156
648 5192(substitution)N
3182
648 5280(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
3227
1933(Alternatively,)X
3249
1258(suf\256cient.)X
3252
1751(counterintuitive)X
3264
3492(extensions\),)X
3423
648 1192(deletions,)N
3425
1121(substitutions,)X
3812
3560(ADGJBEHKCFIL.)X
3957
3570(preprocessing,)X
3994
648 3893(stitutions,)N
4011
648 4003(mentation)N
4026
3868(preprocessing.)X
4071
1472(approximate-matching)X
4189
3519(assumption.\))X
4249
2651(Commentz-Walter)X
4264
3382(Commentz-Walter)X
4296
2790 0.2109(egrep/grep/fgrep\))AX
4304
1319(Commentz-Walter)X
4308
2499(multi-pattern)X
4363
2419(Knuth-Morris-Pratt)X
4371
648 1016(Boyer-Moore)N
4447
1319(preprocessing,)X
4471
648 1346(characters)N
4557
1987(corresponding)X
4626
1539 0.3611(occurrence)AX
4855
3827(string-matching)X
4983
2746 3078 4.8750(ij)AN
5015
648 3172(principle,)N
5020
1100 3188 4.8750(ij)AN
5049
4292 3188 4.8750(ij)AN
5082
1933(multi-pattern)X
5160
648 3865(described)N
5185
648 4071(Algorithm)N
5187
1024(Multi-Patterns)X
5286
1108 4621(shift_value)N
5435
2761(multi-pattern)X
5452
1260(expected-time)X
5550
1442(expected-time)X
5562
648 1379(algorithms)N
5578
648 1489(algorithm)N
5621
1146(architecture,)X
5642
1578(comprehensive.)X
5669
2713(signi\256cant.)X
5748
648 2829(sub-dictionary)N
5754
1936(bibliographic)X
5788
1494(impreciseness\).)X
5807
648 3302(Boyer-Moore)N
5831
1801(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X
5841
1801(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X
5855
1801(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X
5928
2767(bibliographic)X
5931
1791 4533(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)N
5939
1791 4673(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)N
5954
1791 4923(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)N
6022
1772 639(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)N
6035
1772 779(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)N
6042
1812 999(`matching')N
6047
1772 1029(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)N
6179
648 2008(competitive)N
6195
1425(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X
6212
1425(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X
6214
1437 2354(<Hom>ogenious)N
6226
1437 2574(Prob#tic;)N
6232
1437 2684(<[CJ]ACM>;)N
6239
1437 2794(\(<[23]>)N
6254
1425(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X
6284
803 -0.3063(Conclusions)AX
6287
648 3491(Searching)N
6303
3497(possibilities.)X
6351
2146(applications.)X
6359
3641(Collaboratory)X
6367
1676(development\))X
6394
3345(applications,)X
6418
648 4371(Acknowledgem)N
6434
3393(conversations)X
6488
648 4954(experiments.)N
6496
648 686(References)N
6507
1929(``Ef\256cient)X
6513
3159(bibliographic)X
6533
848 1366(Baeza-Yates)N
6556
848 1729(Baeza-Yates)N
6575
848 1839(ACM-SIGIR)N
6605
3227(Communications)X
6612
848 2202(\(October)N
6628
1862(``Approximate)X
6655
848 2818(Commentz-Walter,)N
6664
2989 0.3472(average,'')AX
6668
3679(International)X
6694
2407(implementation)X
6765
2341(comp.source.unix,)X
6829
1474(communication)X
6876
1820(``Approximate)X
6880
2978(expressions,'')X
6903
1767(``Approximate)X
6982
648 2358(Biographical)N
7066
3221(``Introduction)X
7073
1337(\(Addison-Wesley,)X
7091
1737(International)X
7101
648 3458(tinguished)N