25.07.2014 Views

VDM-10 Language Manual

VDM-10 Language Manual

VDM-10 Language Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>VDM</strong>-<strong>10</strong> <strong>Language</strong> <strong>Manual</strong><br />

✡✝<br />

(sc.points > sc’.points) or<br />

(sc.points = sc’.points and<br />

sc.won > sc’.won)).team)<br />

-- no outright winner, so choose random score<br />

-- from joint top scores<br />

else RandomElement ( {sc.team | sc in set gps(gp) &<br />

forall sc’ in set gps(gp) &<br />

sc’.points Team<br />

GroupWinner_cases (gp) ==<br />

cases true:<br />

(clear_winner(gps(gp))) -><br />

return ((iota sc in set gps(gp) &<br />

forall sc’ in set gps(gp) \ {sc} &<br />

sc.points > sc’.points).team),<br />

(winner_by_more_wins(gps(gp))) -><br />

return ((iota sc in set gps(gp) &<br />

forall sc’ in set gps(gp) \ {sc} &<br />

(sc.points > sc’.points) or<br />

(sc.points = sc’.points and<br />

sc.won > sc’.won)).team),<br />

✡✝<br />

others -> RandomElement ( {sc.team | sc in set gps(gp) &<br />

forall sc’ in set gps(gp) &<br />

sc’.points

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!