1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
id = 174
number = 80
visible = False
facts = 'denotational_semantics_aux__predicates'
solution = '''\
prog_listswap(In-->Out) -->
[begin], instructs174((In,1)-->(Out,_)), [end].
instructs174((R0,C0)-->(R,C)) -->
instr174((R0,C0)-->(R,C)).
instructs174((R0,C0)-->(R,C)) -->
instr174((R0,C0)-->(R1,C1)),
instructs174((R1,C1)-->(R,C)).
instr174((R0,C0)-->(R0,C)) -->
[left], { C0 > 1, C is C0 - 1 ; C0 =< 1, C is C0 }.
instr174((R0,C0)-->(R0,C)) -->
[right], { length(R0, LenR0),
( C0 < LenR0, C is C0 + 1 ; C0 >= LenR0, C is C0 ) }.
instr174((R0,C0)-->(R,C0)) -->
[swap], {swap(R0,C0,R)}.'''
|