| (1) | %Directions | | (2) | dir (north). | | (3) | dir (south). | | (4) | dir (east). | | (5) | dir (west). | | (6) | %Reversibility of orientations | | (7) | revDir (east, west). | | (8) | revDir (north, south). | | (9) | %Revert orientations | | (10) | isRevDir (X, Y):- revDir (X, Y). | | (11) | isRevDir (X, Y):- revDir (Y, X). | | (12) | % Look for direct connections | | (13) | hasConnection (X, X, none, 0). | | (14) | hasConnection (X, Y, Direction, Cost):- dir (Direction), connection (X, Y, Direction, Cost). | | (15) | hasConnection (X, Y, Direction, Cost):- dir (Direction), isRevDir (Direction, Reversed), | | (16) | connection (Y, X, Reversed, Cost). |
|