202
D. M. Miller and M. Soeken
18:
end if
19:
for each S α (in RW order) starting at S 0 if v = 0
20:
or S 1 otherwise do
21:
if |S α | = max then
22:
S 1 ← S
23:
if v = 0 then
24:
T ← φ
25:
end if
26:
save ← ||T ||
27:
if α = 0 then
28:
k ← lowest variable index in α
29:
α ← α − {k}
30:
for each p ∈ α do
31:
trans4(S 1 , n, k, p)
32:
end for
33:
if v = 0 then
34:
trans5(S 1 , n, k)
35:
else
36:
if k = v then
37:
trans1(S 1 , n, k, v)
38:
end if
39:
end if
40:
end if
41:
transf orm(S 1 , n, v + 1)
42:
if v = 0 and min = max then
43:
return
44:
end if
45:
||T || ← save
46:
end if
47:
end for
48:
return
49: end procedure
1: procedure PRECEDES(S, n)
2:
find the first α (in RW order) such that S α = S R
α
3:
if there is no such α and cost (T ) < cost (B) or
4:
|S α | > |S R
α | or
5:
|S α | = |S R
α | and S α > 0 then
6:
S R ← S
7:
T R ← T
8:
end if
9:
return
10: end procedure
D. M. Miller and M. Soeken
18:
end if
19:
for each S α (in RW order) starting at S 0 if v = 0
20:
or S 1 otherwise do
21:
if |S α | = max then
22:
S 1 ← S
23:
if v = 0 then
24:
T ← φ
25:
end if
26:
save ← ||T ||
27:
if α = 0 then
28:
k ← lowest variable index in α
29:
α ← α − {k}
30:
for each p ∈ α do
31:
trans4(S 1 , n, k, p)
32:
end for
33:
if v = 0 then
34:
trans5(S 1 , n, k)
35:
else
36:
if k = v then
37:
trans1(S 1 , n, k, v)
38:
end if
39:
end if
40:
end if
41:
transf orm(S 1 , n, v + 1)
42:
if v = 0 and min = max then
43:
return
44:
end if
45:
||T || ← save
46:
end if
47:
end for
48:
return
49: end procedure
1: procedure PRECEDES(S, n)
2:
find the first α (in RW order) such that S α = S R
α
3:
if there is no such α and cost (T ) < cost (B) or
4:
|S α | > |S R
α | or
5:
|S α | = |S R
α | and S α > 0 then
6:
S R ← S
7:
T R ← T
8:
end if
9:
return
10: end procedure
