1 :- dynamic parserVersionNum/1, parserVersionStr/1, parseResult/5.
2 :- dynamic module/4.
3 'parserVersionStr'('0.6.2.1').
4 'parseResult'('ok','',0,0,0).
5 :- dynamic channel/2, bindval/3, agent/3.
6 :- dynamic agent_curry/3, symbol/4.
7 :- dynamic dataTypeDef/2, subTypeDef/2, nameType/2.
8 :- dynamic cspTransparent/1.
9 :- dynamic cspPrint/1.
10 :- dynamic pragma/1.
11 :- dynamic comment/2.
12 :- dynamic assertBool/1, assertRef/5, assertTauPrio/6.
13 :- dynamic assertModelCheckExt/4, assertModelCheck/3.
14 :- dynamic assertLtl/4, assertCtl/4.
15 'parserVersionNum'([0,11,1,1]).
16 'parserVersionStr'('CSPM-Frontent-0.11.1.1').
17 'channel'('a','type'('dotUnitType')).
18 'channel'('b','type'('dotUnitType')).
19 'channel'('c','type'('dotUnitType')).
20 'channel'('lightning','type'('dotUnitType')).
21 'agent'('resettable'(_P),'/\x5c\'(_P,'prefix'('src_span'(7,22,7,31,128,9),[],'lightning','agent_call'('src_span'(7,35,7,45,141,10),'resettable',[_P]),'src_span'(7,32,7,34,137,26)),'src_span_operator'('no_loc_info_available','src_span'(7,19,7,21,125,2))),'no_loc_info_available').
22 'bindval'('Q','prefix'('src_span'(9,5,9,6,160,1),[],'a','prefix'('src_span'(9,10,9,11,165,1),[],'b','prefix'('src_span'(9,15,9,16,170,1),[],'c','val_of'('Q','src_span'(9,20,9,21,175,1)),'src_span'(9,17,9,19,171,6)),'src_span'(9,12,9,14,166,11)),'src_span'(9,7,9,9,161,16)),'src_span'(9,1,9,21,156,20)).
23 'bindval'('resettable_Q','agent_call'('src_span'(11,16,11,26,193,10),'resettable',['val_of'('Q','src_span'(11,27,11,28,204,1))]),'src_span'(11,1,11,29,178,28)).
24 'bindval'('resettable_resettable_Q','agent_call'('src_span'(12,27,12,37,233,10),'resettable',['agent_call'('src_span'(12,38,12,48,244,10),'resettable',['val_of'('Q','src_span'(12,49,12,50,255,1))])]),'src_span'(12,1,12,52,207,51)).
25 'assertRef'('False','val_of'('resettable_Q','src_span'(14,8,14,20,267,12)),'FailureDivergence','val_of'('resettable_resettable_Q','src_span'(14,26,14,49,285,23)),'src_span'(14,1,14,49,260,48)).
26 'assertRef'('False','val_of'('resettable_resettable_Q','src_span'(15,8,15,31,316,23)),'FailureDivergence','val_of'('resettable_Q','src_span'(15,37,15,49,345,12)),'src_span'(15,1,15,49,309,48)).
27 'bindval'('RQ','[]'('prefix'('src_span'(17,6,17,15,364,9),[],'lightning','val_of'('RQ','src_span'(17,19,17,21,377,2)),'src_span'(17,16,17,18,373,15)),'prefix'('src_span'(18,9,18,10,388,1),[],'a','[]'('prefix'('src_span'(18,15,18,24,394,9),[],'lightning','val_of'('RQ','src_span'(18,28,18,30,407,2)),'src_span'(18,25,18,27,403,15)),'prefix'('src_span'(19,18,19,19,427,1),[],'b','[]'('prefix'('src_span'(19,24,19,33,433,9),[],'lightning','val_of'('RQ','src_span'(19,37,19,39,446,2)),'src_span'(19,34,19,36,442,15)),'prefix'('src_span'(20,27,20,28,475,1),[],'c','val_of'('RQ','src_span'(20,32,20,34,480,2)),'src_span'(20,29,20,31,476,7)),'src_span_operator'('no_loc_info_available','src_span'(20,24,20,26,472,2))),'src_span'(19,20,19,22,428,56)),'src_span_operator'('no_loc_info_available','src_span'(19,15,19,17,424,2))),'src_span'(18,11,18,13,389,96)),'src_span_operator'('no_loc_info_available','src_span'(18,6,18,8,385,2))),'src_span'(17,1,20,36,359,125)).
28 'assertRef'('False','val_of'('resettable_Q','src_span'(22,8,22,20,493,12)),'FailureDivergence','val_of'('RQ','src_span'(22,26,22,28,511,2)),'src_span'(22,1,22,28,486,27)).
29 'bindval'('MAIN','val_of'('resettable_Q','src_span'(23,8,23,20,521,12)),'src_span'(23,1,23,20,514,19)).
30 'assertModelCheck'('False','val_of'('resettable_Q','src_span'(24,8,24,20,541,12)),'Deterministic').
31 'bindval'('Q_b_STOP','/\x5c\'('val_of'('Q','src_span'(26,12,26,13,583,1)),'prefix'('src_span'(26,18,26,19,589,1),[],'b','stop'('src_span'(26,23,26,27,594,4)),'src_span'(26,20,26,22,590,9)),'src_span_operator'('no_loc_info_available','src_span'(26,14,26,16,585,2))),'src_span'(26,1,26,28,572,27)).
32 'assertModelCheck'('True','val_of'('Q_b_STOP','src_span'(27,12,27,20,611,8)),'Deterministic').
33 'bindval'('R','[]'('prefix'('src_span'(35,5,35,6,838,1),[],'a','val_of'('R','src_span'(35,10,35,11,843,1)),'src_span'(35,7,35,9,839,6)),'prefix'('src_span'(35,15,35,16,848,1),[],'b','val_of'('DIV','src_span'(35,20,35,23,853,3)),'src_span'(35,17,35,19,849,8)),'src_span_operator'('no_loc_info_available','src_span'(35,12,35,14,845,2))),'src_span'(35,1,35,23,834,22)).
34 'bindval'('DIV','|~|'('val_of'('DIV','src_span'(37,7,37,10,864,3)),'val_of'('DIV','src_span'(37,15,37,18,872,3)),'src_span_operator'('no_loc_info_available','src_span'(37,11,37,14,868,3))),'src_span'(37,1,37,18,858,17)).
35 'bindval'('RT','exception'('setExp'('rangeEnum'(['b'])),'val_of'('R','src_span'(39,6,39,7,882,1)),'val_of'('RT','src_span'(39,18,39,20,894,2)),'src_span'(39,8,39,17,884,9)),'src_span'(39,1,39,20,877,19)).
36 'assertModelCheck'('False','val_of'('RT','src_span'(41,8,41,10,905,2)),'LivelockFree').
37 'channel'('revive','type'('dotUnitType')).
38 'agent'('revivable'(_E,_P2),'exception'(_E,_P2,'prefix'('src_span'(54,27,54,33,1205,6),[],'revive','agent_call'('src_span'(54,37,54,46,1215,9),'revivable',[_E,_P2]),'src_span'(54,34,54,36,1211,24)),'src_span'(54,20,54,25,1198,5)),'src_span'(54,20,54,25,1198,5)).
39 'channel'('num','type'('dotTupleType'(['setExp'('rangeClosed'('int'(0),'int'(10)))]))).
40 'channel'('den','type'('dotTupleType'(['setExp'('rangeClosed'('int'(0),'int'(10)))]))).
41 'channel'('res','type'('dotTupleType'(['setExp'('rangeClosed'('int'(0),'int'(10)))]))).
42 'channel'('error','type'('dotUnitType')).
43 'bindval'('Divide','prefix'('src_span'(59,10,59,13,1284,3),['in'(_x)],'num','prefix'('src_span'(59,19,59,22,1293,3),['in'(_y)],'den','ifte'('>'(_y,'int'(0)),'prefix'('src_span'(59,40,59,43,1314,3),['out'('/'(_x,_y))],'res','val_of'('Divide','src_span'(59,53,59,59,1327,6)),'src_span'(59,50,59,52,1323,16)),'prefix'('src_span'(60,40,60,45,1373,5),[],'error','stop'('src_span'(60,49,60,53,1382,4)),'src_span'(60,46,60,48,1378,13)),'src_span'(59,28,59,34,1302,6),'src_span'(59,35,59,39,1308,28),'src_span'(59,60,60,39,1333,72)),'src_span'(59,25,59,27,1298,90)),'src_span'(59,16,59,18,1289,99)),'src_span'(59,1,60,53,1275,111)).
44 'bindval'('revivable_error_Divide','agent_call'('src_span'(62,26,62,35,1413,9),'revivable',['setExp'('rangeEnum'(['error'])),'val_of'('Divide','src_span'(62,44,62,50,1431,6))]),'src_span'(62,1,62,51,1388,50)).
45 'assertModelCheck'('False','val_of'('revivable_error_Divide','src_span'(64,8,64,30,1447,22)),'DeadlockFree').
46 'comment'('lineComment'('-- section7-2.csp '),'src_position'(1,1,0,18)).
47 'comment'('lineComment'('-- Illustrating interrupt and throw'),'src_position'(2,1,19,35)).
48 'comment'('lineComment'('-- Bill Roscoe, July 2010'),'src_position'(3,1,55,25)).
49 'comment'('lineComment'('--&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'),'src_position'(30,1,639,62)).
50 'comment'('lineComment'('-- Throw is the only operator that can permit a process to take'),'src_position'(32,1,703,63)).
51 'comment'('lineComment'('-- an action that would lead to divergence, but itself avoid that'),'src_position'(33,1,767,65)).
52 'comment'('lineComment'('-- It can catch errors in complex systems and parallel composition'),'src_position'(43,1,930,66)).
53 'comment'('lineComment'('-- in a concise way, as in'),'src_position'(44,1,997,26)).
54 'comment'('lineComment'('-- (R|||R|||....|||R)[|{b}|>Q'),'src_position'(47,1,1026,29)).
55 'comment'('lineComment'('-- The following operator catches a run-time error and allows you'),'src_position'(49,1,1057,65)).
56 'comment'('lineComment'('-- to re-start the system in question.'),'src_position'(50,1,1123,38)).
57 'comment'('lineComment'('-- note that resettable handles errors that come from outside the object process,'),'src_position'(66,1,1488,81)).
58 'comment'('lineComment'('-- and revivable handles ones from within it.'),'src_position'(67,1,1570,45)).
59 'comment'('lineComment'('-- There are major uses of [|A|> in example files from chapters 9 and 14'),'src_position'(69,1,1617,72)).
60 'symbol'('a','a','src_span'(5,9,5,10,90,1),'Channel').
61 'symbol'('b','b','src_span'(5,11,5,12,92,1),'Channel').
62 'symbol'('c','c','src_span'(5,13,5,14,94,1),'Channel').
63 'symbol'('lightning','lightning','src_span'(5,15,5,24,96,9),'Channel').
64 'symbol'('resettable','resettable','src_span'(7,1,7,11,107,10),'Funktion or Process').
65 'symbol'('P','P','src_span'(7,12,7,13,118,1),'Ident (Prolog Variable)').
66 'symbol'('Q','Q','src_span'(9,1,9,2,156,1),'Ident (Groundrep.)').
67 'symbol'('resettable_Q','resettable_Q','src_span'(11,1,11,13,178,12),'Ident (Groundrep.)').
68 'symbol'('resettable_resettable_Q','resettable_resettable_Q','src_span'(12,1,12,24,207,23),'Ident (Groundrep.)').
69 'symbol'('RQ','RQ','src_span'(17,1,17,3,359,2),'Ident (Groundrep.)').
70 'symbol'('MAIN','MAIN','src_span'(23,1,23,5,514,4),'Ident (Groundrep.)').
71 'symbol'('Q_b_STOP','Q_b_STOP','src_span'(26,1,26,9,572,8),'Ident (Groundrep.)').
72 'symbol'('R','R','src_span'(35,1,35,2,834,1),'Ident (Groundrep.)').
73 'symbol'('DIV','DIV','src_span'(37,1,37,4,858,3),'Ident (Groundrep.)').
74 'symbol'('RT','RT','src_span'(39,1,39,3,877,2),'Ident (Groundrep.)').
75 'symbol'('revive','revive','src_span'(52,9,52,15,1171,6),'Channel').
76 'symbol'('revivable','revivable','src_span'(54,1,54,10,1179,9),'Funktion or Process').
77 'symbol'('E','E','src_span'(54,11,54,12,1189,1),'Ident (Prolog Variable)').
78 'symbol'('P2','P','src_span'(54,13,54,14,1191,1),'Ident (Prolog Variable)').
79 'symbol'('num','num','src_span'(56,9,56,12,1240,3),'Channel').
80 'symbol'('den','den','src_span'(56,13,56,16,1244,3),'Channel').
81 'symbol'('res','res','src_span'(56,17,56,20,1248,3),'Channel').
82 'symbol'('error','error','src_span'(57,9,57,14,1268,5),'Channel').
83 'symbol'('Divide','Divide','src_span'(59,1,59,7,1275,6),'Ident (Groundrep.)').
84 'symbol'('x','x','src_span'(59,14,59,15,1288,1),'Ident (Prolog Variable)').
85 'symbol'('y','y','src_span'(59,23,59,24,1297,1),'Ident (Prolog Variable)').
86 'symbol'('revivable_error_Divide','revivable_error_Divide','src_span'(62,1,62,23,1388,22),'Ident (Groundrep.)').