-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathRobot.prob
More file actions
4 lines (4 loc) · 24.6 KB
/
Robot.prob
File metadata and controls
4 lines (4 loc) · 24.6 KB
1
2
3
4
parser_version('2018-03-15 10:38:02.795').
classical_b('Robot',['E:\\Final Year\\Sem1\\6SENG003C Reasoning about Programs (SEM 1)\\TutorialWorkspaceAtelierB\\Robot_CW_Final\\Robot.mch','E:\\Final Year\\Sem1\\6SENG003C Reasoning about Programs (SEM 1)\\TutorialWorkspaceAtelierB\\Robot_CW_Final\\Maze.mch']).
machine(abstract_machine(pos(389,2,8,1,92,4),machine(pos(390,2,8,1,8,8)),machine_header(pos(391,2,9,5,9,9),'Maze',[]),[sets(pos(392,2,11,1,12,23),[enumerated_set(pos(393,2,12,4,12,23),'MESSAGE',[identifier(pos(394,2,12,15,12,18),'Yes'),identifier(pos(395,2,12,20,12,22),'No')])]),constants(pos(396,2,14,1,16,70),[identifier(pos(397,2,16,5,16,16),entrySquare),identifier(pos(398,2,16,18,16,28),exitSquare),identifier(pos(399,2,16,30,16,40),xAxisRobot),identifier(pos(400,2,16,42,16,52),yAxisRobot),identifier(pos(401,2,16,54,16,70),mazeWallbarriers)]),properties(pos(402,2,18,1,25,156),conjunct(pos(403,2,20,5,25,156),conjunct(pos(404,2,20,5,24,44),conjunct(pos(405,2,20,5,23,65),conjunct(pos(406,2,20,5,23,38),conjunct(pos(407,2,20,5,22,68),conjunct(pos(408,2,20,5,22,39),conjunct(pos(409,2,20,5,21,48),conjunct(pos(410,2,20,5,21,27),conjunct(pos(411,2,20,5,20,48),subset(pos(412,2,20,5,20,27),identifier(pos(413,2,20,5,20,15),xAxisRobot),natural1_set(pos(414,2,20,19,20,27))),equal(pos(415,2,20,31,20,48),identifier(pos(416,2,20,31,20,41),xAxisRobot),interval(pos(417,2,20,44,20,48),integer(pos(418,2,20,44,20,45),1),integer(pos(419,2,20,47,20,48),7)))),subset(pos(420,2,21,5,21,27),identifier(pos(421,2,21,5,21,15),yAxisRobot),natural1_set(pos(422,2,21,19,21,27)))),equal(pos(423,2,21,31,21,48),identifier(pos(424,2,21,31,21,41),yAxisRobot),interval(pos(425,2,21,44,21,48),integer(pos(426,2,21,44,21,45),1),integer(pos(427,2,21,47,21,48),5)))),member(pos(428,2,22,5,22,39),identifier(pos(429,2,22,5,22,16),entrySquare),relations(pos(430,2,22,18,22,39),natural1_set(pos(431,2,22,18,22,26)),natural1_set(pos(432,2,22,31,22,39))))),equal(pos(433,2,22,43,22,68),identifier(pos(434,2,22,43,22,54),entrySquare),set_extension(pos(435,2,22,57,22,68),[couple(pos(436,2,22,59,22,66),[integer(pos(437,2,22,59,22,60),1),integer(pos(438,2,22,65,22,66),1)])]))),member(pos(439,2,23,5,23,38),identifier(pos(440,2,23,5,23,15),exitSquare),relations(pos(441,2,23,17,23,38),natural1_set(pos(442,2,23,17,23,25)),natural1_set(pos(443,2,23,30,23,38))))),equal(pos(444,2,23,41,23,65),identifier(pos(445,2,23,41,23,51),exitSquare),set_extension(pos(446,2,23,54,23,65),[couple(pos(447,2,23,56,23,63),[integer(pos(448,2,23,56,23,57),1),integer(pos(449,2,23,62,23,63),5)])]))),member(pos(450,2,24,5,24,44),identifier(pos(451,2,24,5,24,21),mazeWallbarriers),relations(pos(452,2,24,23,24,44),natural1_set(pos(453,2,24,23,24,31)),natural1_set(pos(454,2,24,36,24,44))))),equal(pos(455,2,25,5,25,156),identifier(pos(456,2,25,5,25,21),mazeWallbarriers),set_extension(pos(457,2,25,24,25,156),[couple(pos(458,2,25,26,25,33),[integer(pos(459,2,25,26,25,27),1),integer(pos(460,2,25,32,25,33),3)]),couple(pos(461,2,25,37,25,44),[integer(pos(462,2,25,37,25,38),2),integer(pos(463,2,25,43,25,44),1)]),couple(pos(464,2,25,48,25,55),[integer(pos(465,2,25,48,25,49),2),integer(pos(466,2,25,54,25,55),3)]),couple(pos(467,2,25,59,25,66),[integer(pos(468,2,25,59,25,60),2),integer(pos(469,2,25,65,25,66),5)]),couple(pos(470,2,25,70,25,77),[integer(pos(471,2,25,70,25,71),3),integer(pos(472,2,25,76,25,77),3)]),couple(pos(473,2,25,81,25,88),[integer(pos(474,2,25,81,25,82),4),integer(pos(475,2,25,87,25,88),2)]),couple(pos(476,2,25,92,25,99),[integer(pos(477,2,25,92,25,93),4),integer(pos(478,2,25,98,25,99),3)]),couple(pos(479,2,25,103,25,110),[integer(pos(480,2,25,103,25,104),4),integer(pos(481,2,25,109,25,110),4)]),couple(pos(482,2,25,114,25,121),[integer(pos(483,2,25,114,25,115),6),integer(pos(484,2,25,120,25,121),1)]),couple(pos(485,2,25,125,25,132),[integer(pos(486,2,25,125,25,126),6),integer(pos(487,2,25,131,25,132),2)]),couple(pos(488,2,25,136,25,143),[integer(pos(489,2,25,136,25,137),6),integer(pos(490,2,25,142,25,143),4)]),couple(pos(491,2,25,147,25,154),[integer(pos(492,2,25,147,25,148),7),integer(pos(493,2,25,153,25,154),4)])])))),variables(pos(494,2,27,1,29,53),[identifier(pos(495,2,29,5,29,19),visitedXsquare),identifier(pos(496,2,29,21,29,35),visitedYsquare),identifier(pos(497,2,29,37,29,53),visitedRobotpath)]),invariant(pos(498,2,31,1,35,45),conjunct(pos(499,2,33,5,35,45),conjunct(pos(500,2,33,5,34,28),member(pos(501,2,33,5,33,28),identifier(pos(502,2,33,5,33,19),visitedXsquare),natural_set(pos(503,2,33,21,33,28))),member(pos(504,2,34,5,34,28),identifier(pos(505,2,34,5,34,19),visitedYsquare),natural_set(pos(506,2,34,21,34,28)))),member(pos(507,2,35,5,35,45),identifier(pos(508,2,35,5,35,21),visitedRobotpath),seq(pos(509,2,35,23,35,45),mult_or_cart(pos(510,2,35,27,35,44),integer_set(pos(511,2,35,27,35,34)),integer_set(pos(512,2,35,37,35,44))))))),initialisation(pos(513,2,37,1,39,73),parallel(pos(514,2,39,5,39,73),[assign(pos(515,2,39,5,39,27),[identifier(pos(516,2,39,5,39,21),visitedRobotpath)],[empty_sequence(pos(517,2,39,25,39,27))]),assign(pos(518,2,39,31,39,50),[identifier(pos(519,2,39,31,39,45),visitedXsquare)],[integer(pos(520,2,39,49,39,50),0)]),assign(pos(521,2,39,54,39,73),[identifier(pos(522,2,39,54,39,68),visitedYsquare)],[integer(pos(523,2,39,72,39,73),0)])])),operations(pos(524,2,41,1,90,7),[operation(pos(525,2,47,4,54,7),identifier(pos(525,2,47,4,54,7),updateMaze),[],[identifier(pos(526,2,47,15,47,20),xAxis),identifier(pos(527,2,47,22,47,27),yAxis),identifier(pos(528,2,47,29,47,39),robotRoute)],precondition(pos(529,2,48,4,54,7),conjunct(pos(530,2,49,8,49,78),conjunct(pos(531,2,49,8,49,41),member(pos(532,2,49,8,49,23),identifier(pos(533,2,49,8,49,13),xAxis),natural1_set(pos(534,2,49,15,49,23))),member(pos(535,2,49,26,49,41),identifier(pos(536,2,49,26,49,31),yAxis),natural1_set(pos(537,2,49,33,49,41)))),member(pos(538,2,49,44,49,78),identifier(pos(539,2,49,44,49,54),robotRoute),seq(pos(540,2,49,56,49,78),mult_or_cart(pos(541,2,49,60,49,77),integer_set(pos(542,2,49,60,49,67)),integer_set(pos(543,2,49,70,49,77)))))),parallel(pos(544,2,51,8,53,31),[assign(pos(545,2,51,8,51,38),[identifier(pos(546,2,51,8,51,24),visitedRobotpath)],[identifier(pos(547,2,51,28,51,38),robotRoute)]),assign(pos(548,2,52,8,52,31),[identifier(pos(549,2,52,8,52,22),visitedXsquare)],[identifier(pos(550,2,52,26,52,31),xAxis)]),assign(pos(551,2,53,8,53,31),[identifier(pos(552,2,53,8,53,22),visitedYsquare)],[identifier(pos(553,2,53,26,53,31),yAxis)])]))),operation(pos(554,2,59,4,66,7),identifier(pos(554,2,59,4,66,7),foundExit),[identifier(pos(555,2,59,4,59,16),hasExitFound)],[],if(pos(556,2,60,4,66,7),member(pos(557,2,61,10,61,57),couple(pos(558,2,61,10,61,43),[identifier(pos(559,2,61,10,61,24),visitedXsquare),identifier(pos(560,2,61,29,61,43),visitedYsquare)]),identifier(pos(561,2,61,47,61,57),exitSquare)),assign(pos(562,2,63,8,63,27),[identifier(pos(563,2,63,8,63,20),hasExitFound)],[identifier(pos(564,2,63,24,63,27),'Yes')]),[],assign(pos(565,2,65,8,65,26),[identifier(pos(566,2,65,8,65,20),hasExitFound)],[identifier(pos(567,2,65,24,65,26),'No')]))),operation(pos(568,2,72,4,83,7),identifier(pos(568,2,72,4,83,7),hasVisitedSquare),[identifier(pos(569,2,72,4,72,13),isVisited)],[identifier(pos(570,2,72,36,72,46),xCellpoint),identifier(pos(571,2,72,48,72,58),yCellpoint)],precondition(pos(572,2,73,4,83,7),conjunct(pos(573,2,74,8,74,57),member(pos(574,2,74,8,74,31),identifier(pos(575,2,74,8,74,18),xCellpoint),identifier(pos(576,2,74,21,74,31),xAxisRobot)),member(pos(577,2,74,34,74,57),identifier(pos(578,2,74,34,74,44),yCellpoint),identifier(pos(579,2,74,47,74,57),yAxisRobot))),if(pos(580,2,76,8,82,11),member(pos(581,2,77,13,77,62),couple(pos(582,2,77,13,77,38),[identifier(pos(583,2,77,13,77,23),xCellpoint),identifier(pos(584,2,77,28,77,38),yCellpoint)]),range(pos(585,2,77,41,77,62),identifier(pos(586,2,77,45,77,61),visitedRobotpath))),assign(pos(587,2,79,12,79,28),[identifier(pos(588,2,79,12,79,21),isVisited)],[identifier(pos(589,2,79,25,79,28),'Yes')]),[],assign(pos(590,2,81,12,81,27),[identifier(pos(591,2,81,12,81,21),isVisited)],[identifier(pos(592,2,81,25,81,27),'No')])))),operation(pos(593,2,87,4,90,7),identifier(pos(593,2,87,4,90,7),robotsRoute),[identifier(pos(594,2,87,4,87,8),path)],[],block(pos(595,2,88,4,90,7),assign(pos(596,2,89,8,89,32),[identifier(pos(597,2,89,8,89,12),path)],[identifier(pos(598,2,89,16,89,32),visitedRobotpath)])))])])).
machine(abstract_machine(pos(1,1,9,1,168,4),machine(pos(2,1,9,1,9,8)),machine_header(pos(3,1,10,5,10,10),'Robot',[]),[includes(pos(4,1,12,1,13,9),[machine_reference(pos(5,1,13,5,13,9),'Maze',[])]),promotes(pos(6,1,15,1,16,45),[identifier(pos(7,1,16,5,16,14),foundExit),identifier(pos(8,1,16,16,16,32),hasVisitedSquare),identifier(pos(9,1,16,34,16,45),robotsRoute)]),sets(pos(10,1,18,1,29,6),[enumerated_set(pos(11,1,19,5,19,44),'DIRECTIONS',[identifier(pos(12,1,19,19,19,24),'North'),identifier(pos(13,1,19,26,19,31),'South'),identifier(pos(14,1,19,33,19,37),'East'),identifier(pos(15,1,19,39,19,43),'West')]),enumerated_set(pos(16,1,22,5,29,6),'STATUS_MESSAGE',[identifier(pos(17,1,23,9,23,26),'SuccessfullyMoved'),identifier(pos(18,1,24,9,24,43),'CannotMoveInternalMazewallDetected'),identifier(pos(19,1,25,9,25,47),'CannotMoveExternalBoundarywallDetected'),identifier(pos(20,1,26,9,26,31),'SuccessfullyTeleported'),identifier(pos(21,1,27,9,27,44),'CannotTeleportToExitOrOnStartSquare'),identifier(pos(22,1,28,9,28,42),'CannotTeleportToMazeInternalWalls')])]),variables(pos(23,1,31,1,33,69),[identifier(pos(24,1,33,5,33,27),visitedRobotDirections),identifier(pos(25,1,33,29,33,47),visitedPathofRobot),identifier(pos(26,1,33,49,33,58),xPosition),identifier(pos(27,1,33,60,33,69),yPosition)]),invariant(pos(28,1,35,1,42,26),conjunct(pos(29,1,37,5,42,26),conjunct(pos(30,1,37,5,41,26),conjunct(pos(31,1,37,5,40,24),conjunct(pos(32,1,37,5,39,24),conjunct(pos(33,1,37,5,38,47),member(pos(34,1,37,5,37,44),identifier(pos(35,1,37,5,37,27),visitedRobotDirections),seq(pos(36,1,37,29,37,44),identifier(pos(37,1,37,33,37,43),'DIRECTIONS'))),member(pos(38,1,38,5,38,47),identifier(pos(39,1,38,5,38,23),visitedPathofRobot),seq(pos(40,1,38,25,38,47),mult_or_cart(pos(41,1,38,29,38,46),integer_set(pos(42,1,38,29,38,36)),integer_set(pos(43,1,38,39,38,46)))))),member(pos(44,1,39,5,39,24),identifier(pos(45,1,39,5,39,14),xPosition),natural1_set(pos(46,1,39,16,39,24)))),member(pos(47,1,40,5,40,24),identifier(pos(48,1,40,5,40,14),yPosition),natural1_set(pos(49,1,40,16,40,24)))),member(pos(50,1,41,5,41,26),identifier(pos(51,1,41,5,41,14),xPosition),identifier(pos(52,1,41,16,41,26),xAxisRobot))),member(pos(53,1,42,5,42,26),identifier(pos(54,1,42,5,42,14),yPosition),identifier(pos(55,1,42,16,42,26),yAxisRobot)))),initialisation(pos(56,1,44,1,49,19),parallel(pos(57,1,46,5,49,19),[assign(pos(58,1,46,5,46,33),[identifier(pos(59,1,46,5,46,27),visitedRobotDirections)],[empty_sequence(pos(60,1,46,31,46,33))]),assign(pos(61,1,47,5,47,29),[identifier(pos(62,1,47,5,47,23),visitedPathofRobot)],[empty_sequence(pos(63,1,47,27,47,29))]),assign(pos(64,1,48,5,48,19),[identifier(pos(65,1,48,5,48,14),xPosition)],[integer(pos(66,1,48,18,48,19),1)]),assign(pos(67,1,49,5,49,19),[identifier(pos(68,1,49,5,49,14),yPosition)],[integer(pos(69,1,49,18,49,19),1)])])),operations(pos(70,1,51,1,166,7),[operation(pos(71,1,55,4,73,8),identifier(pos(71,1,55,4,73,8),moveNorth),[identifier(pos(72,1,55,4,55,17),outputMessage)],[],if(pos(73,1,56,5,73,8),conjunct(pos(74,1,58,11,58,91),not_member(pos(75,1,58,11,58,61),couple(pos(76,1,58,11,58,39),[identifier(pos(77,1,58,11,58,20),xPosition),add(pos(78,1,58,25,58,39),identifier(pos(79,1,58,25,58,34),yPosition),integer(pos(80,1,58,38,58,39),1))]),identifier(pos(81,1,58,45,58,61),mazeWallbarriers)),member(pos(82,1,58,65,58,91),add(pos(83,1,58,65,58,78),identifier(pos(84,1,58,65,58,74),yPosition),integer(pos(85,1,58,77,58,78),1)),identifier(pos(86,1,58,81,58,91),yAxisRobot))),parallel(pos(87,1,60,9,66,43),[assign(pos(88,1,60,9,60,35),[identifier(pos(89,1,60,9,60,18),yPosition)],[add(pos(90,1,60,22,60,35),identifier(pos(91,1,60,22,60,31),yPosition),integer(pos(92,1,60,34,60,35),1))]),assign(pos(93,1,62,9,62,66),[identifier(pos(94,1,62,9,62,31),visitedRobotDirections)],[insert_tail(pos(95,1,62,35,62,66),identifier(pos(96,1,62,35,62,57),visitedRobotDirections),identifier(pos(97,1,62,61,62,66),'North'))]),assign(pos(98,1,64,9,64,77),[identifier(pos(99,1,64,9,64,27),visitedPathofRobot)],[insert_tail(pos(100,1,64,31,64,77),identifier(pos(101,1,64,31,64,49),visitedPathofRobot),couple(pos(102,1,64,54,64,77),[identifier(pos(103,1,64,54,64,63),xPosition),identifier(pos(104,1,64,68,64,77),yPosition)]))]),operation_call(pos(105,1,65,9,65,19),identifier(pos(106,1,65,9,65,19),updateMaze),[],[identifier(pos(107,1,65,20,65,29),xPosition),add(pos(108,1,65,31,65,43),identifier(pos(109,1,65,31,65,40),yPosition),integer(pos(110,1,65,42,65,43),1)),insert_tail(pos(111,1,65,45,65,92),identifier(pos(112,1,65,45,65,63),visitedPathofRobot),couple(pos(113,1,65,68,65,92),[identifier(pos(114,1,65,68,65,77),xPosition),identifier(pos(115,1,65,83,65,92),yPosition)]))]),assign(pos(116,1,66,9,66,43),[identifier(pos(117,1,66,9,66,22),outputMessage)],[identifier(pos(118,1,66,26,66,43),'SuccessfullyMoved')])]),[if_elsif(pos(119,1,67,5,70,67),not_member(pos(120,1,68,10,68,37),add(pos(121,1,68,10,68,22),identifier(pos(122,1,68,10,68,19),yPosition),integer(pos(123,1,68,21,68,22),1)),identifier(pos(124,1,68,27,68,37),yAxisRobot)),assign(pos(125,1,70,12,70,67),[identifier(pos(126,1,70,12,70,25),outputMessage)],[identifier(pos(127,1,70,29,70,67),'CannotMoveExternalBoundarywallDetected')]))],assign(pos(128,1,72,7,72,58),[identifier(pos(129,1,72,7,72,20),outputMessage)],[identifier(pos(130,1,72,24,72,58),'CannotMoveInternalMazewallDetected')]))),operation(pos(131,1,77,4,92,8),identifier(pos(131,1,77,4,92,8),moveSouth),[identifier(pos(132,1,77,4,77,17),outputMessage)],[],if(pos(133,1,78,5,92,8),conjunct(pos(134,1,79,11,79,90),not_member(pos(135,1,79,11,79,58),couple(pos(136,1,79,11,79,37),[identifier(pos(137,1,79,11,79,20),xPosition),minus_or_set_subtract(pos(138,1,79,25,79,37),identifier(pos(139,1,79,25,79,34),yPosition),integer(pos(140,1,79,36,79,37),1))]),identifier(pos(141,1,79,42,79,58),mazeWallbarriers)),member(pos(142,1,79,63,79,90),minus_or_set_subtract(pos(143,1,79,63,79,76),identifier(pos(144,1,79,63,79,72),yPosition),integer(pos(145,1,79,75,79,76),1)),identifier(pos(146,1,79,80,79,90),yAxisRobot))),parallel(pos(147,1,81,9,85,43),[assign(pos(148,1,81,9,81,35),[identifier(pos(149,1,81,9,81,18),yPosition)],[minus_or_set_subtract(pos(150,1,81,22,81,35),identifier(pos(151,1,81,22,81,31),yPosition),integer(pos(152,1,81,34,81,35),1))]),assign(pos(153,1,82,9,82,66),[identifier(pos(154,1,82,9,82,31),visitedRobotDirections)],[insert_tail(pos(155,1,82,35,82,66),identifier(pos(156,1,82,35,82,57),visitedRobotDirections),identifier(pos(157,1,82,61,82,66),'South'))]),assign(pos(158,1,83,9,83,77),[identifier(pos(159,1,83,9,83,27),visitedPathofRobot)],[insert_tail(pos(160,1,83,31,83,77),identifier(pos(161,1,83,31,83,49),visitedPathofRobot),couple(pos(162,1,83,54,83,77),[identifier(pos(163,1,83,54,83,63),xPosition),identifier(pos(164,1,83,68,83,77),yPosition)]))]),operation_call(pos(165,1,84,9,84,19),identifier(pos(166,1,84,9,84,19),updateMaze),[],[identifier(pos(167,1,84,20,84,29),xPosition),minus_or_set_subtract(pos(168,1,84,31,84,43),identifier(pos(169,1,84,31,84,40),yPosition),integer(pos(170,1,84,42,84,43),1)),insert_tail(pos(171,1,84,45,84,92),identifier(pos(172,1,84,45,84,63),visitedPathofRobot),couple(pos(173,1,84,68,84,92),[identifier(pos(174,1,84,68,84,77),xPosition),identifier(pos(175,1,84,83,84,92),yPosition)]))]),assign(pos(176,1,85,9,85,43),[identifier(pos(177,1,85,9,85,22),outputMessage)],[identifier(pos(178,1,85,26,85,43),'SuccessfullyMoved')])]),[if_elsif(pos(179,1,86,5,89,67),not_member(pos(180,1,87,10,87,38),minus_or_set_subtract(pos(181,1,87,10,87,23),identifier(pos(182,1,87,10,87,19),yPosition),integer(pos(183,1,87,22,87,23),1)),identifier(pos(184,1,87,28,87,38),yAxisRobot)),assign(pos(185,1,89,12,89,67),[identifier(pos(186,1,89,12,89,25),outputMessage)],[identifier(pos(187,1,89,29,89,67),'CannotMoveExternalBoundarywallDetected')]))],assign(pos(188,1,91,7,91,58),[identifier(pos(189,1,91,7,91,20),outputMessage)],[identifier(pos(190,1,91,24,91,58),'CannotMoveInternalMazewallDetected')]))),operation(pos(191,1,96,4,111,8),identifier(pos(191,1,96,4,111,8),moveEast),[identifier(pos(192,1,96,4,96,17),outputMessage)],[],if(pos(193,1,97,5,111,8),conjunct(pos(194,1,98,11,98,90),not_member(pos(195,1,98,11,98,59),couple(pos(196,1,98,11,98,38),[add(pos(197,1,98,11,98,23),identifier(pos(198,1,98,11,98,20),xPosition),integer(pos(199,1,98,22,98,23),1)),identifier(pos(200,1,98,29,98,38),yPosition)]),identifier(pos(201,1,98,43,98,59),mazeWallbarriers)),member(pos(202,1,98,64,98,90),add(pos(203,1,98,64,98,77),identifier(pos(204,1,98,64,98,73),xPosition),integer(pos(205,1,98,76,98,77),1)),identifier(pos(206,1,98,80,98,90),xAxisRobot))),parallel(pos(207,1,100,9,104,43),[assign(pos(208,1,100,9,100,35),[identifier(pos(209,1,100,9,100,18),xPosition)],[add(pos(210,1,100,22,100,35),identifier(pos(211,1,100,22,100,31),xPosition),integer(pos(212,1,100,34,100,35),1))]),assign(pos(213,1,101,9,101,65),[identifier(pos(214,1,101,9,101,31),visitedRobotDirections)],[insert_tail(pos(215,1,101,35,101,65),identifier(pos(216,1,101,35,101,57),visitedRobotDirections),identifier(pos(217,1,101,61,101,65),'East'))]),assign(pos(218,1,102,9,102,78),[identifier(pos(219,1,102,9,102,27),visitedPathofRobot)],[insert_tail(pos(220,1,102,31,102,78),identifier(pos(221,1,102,31,102,49),visitedPathofRobot),couple(pos(222,1,102,54,102,78),[identifier(pos(223,1,102,54,102,63),xPosition),identifier(pos(224,1,102,69,102,78),yPosition)]))]),operation_call(pos(225,1,103,9,103,19),identifier(pos(226,1,103,9,103,19),updateMaze),[],[add(pos(227,1,103,20,103,33),identifier(pos(228,1,103,20,103,29),xPosition),integer(pos(229,1,103,32,103,33),1)),identifier(pos(230,1,103,35,103,44),yPosition),insert_tail(pos(231,1,103,46,103,93),identifier(pos(232,1,103,46,103,64),visitedPathofRobot),couple(pos(233,1,103,69,103,93),[identifier(pos(234,1,103,69,103,78),xPosition),identifier(pos(235,1,103,84,103,93),yPosition)]))]),assign(pos(236,1,104,9,104,43),[identifier(pos(237,1,104,9,104,22),outputMessage)],[identifier(pos(238,1,104,26,104,43),'SuccessfullyMoved')])]),[if_elsif(pos(239,1,105,5,108,67),not_member(pos(240,1,106,10,106,38),add(pos(241,1,106,10,106,23),identifier(pos(242,1,106,10,106,19),xPosition),integer(pos(243,1,106,22,106,23),1)),identifier(pos(244,1,106,28,106,38),xAxisRobot)),assign(pos(245,1,108,12,108,67),[identifier(pos(246,1,108,12,108,25),outputMessage)],[identifier(pos(247,1,108,29,108,67),'CannotMoveExternalBoundarywallDetected')]))],assign(pos(248,1,110,7,110,58),[identifier(pos(249,1,110,7,110,20),outputMessage)],[identifier(pos(250,1,110,24,110,58),'CannotMoveInternalMazewallDetected')]))),operation(pos(251,1,115,4,131,8),identifier(pos(251,1,115,4,131,8),moveWest),[identifier(pos(252,1,115,4,115,17),outputMessage)],[],if(pos(253,1,116,5,131,8),conjunct(pos(254,1,117,11,118,36),not_member(pos(255,1,117,11,117,60),couple(pos(256,1,117,11,117,39),[minus_or_set_subtract(pos(257,1,117,11,117,25),identifier(pos(258,1,117,11,117,20),xPosition),integer(pos(259,1,117,24,117,25),1)),identifier(pos(260,1,117,30,117,39),yPosition)]),identifier(pos(261,1,117,44,117,60),mazeWallbarriers)),member(pos(262,1,118,10,118,36),minus_or_set_subtract(pos(263,1,118,10,118,23),identifier(pos(264,1,118,10,118,19),xPosition),integer(pos(265,1,118,22,118,23),1)),identifier(pos(266,1,118,26,118,36),xAxisRobot))),parallel(pos(267,1,120,9,124,43),[assign(pos(268,1,120,9,120,35),[identifier(pos(269,1,120,9,120,18),xPosition)],[minus_or_set_subtract(pos(270,1,120,22,120,35),identifier(pos(271,1,120,22,120,31),xPosition),integer(pos(272,1,120,34,120,35),1))]),assign(pos(273,1,121,9,121,65),[identifier(pos(274,1,121,9,121,31),visitedRobotDirections)],[insert_tail(pos(275,1,121,35,121,65),identifier(pos(276,1,121,35,121,57),visitedRobotDirections),identifier(pos(277,1,121,61,121,65),'West'))]),assign(pos(278,1,122,9,122,77),[identifier(pos(279,1,122,9,122,27),visitedPathofRobot)],[insert_tail(pos(280,1,122,31,122,77),identifier(pos(281,1,122,31,122,49),visitedPathofRobot),couple(pos(282,1,122,54,122,77),[identifier(pos(283,1,122,54,122,63),xPosition),identifier(pos(284,1,122,68,122,77),yPosition)]))]),operation_call(pos(285,1,123,9,123,19),identifier(pos(286,1,123,9,123,19),updateMaze),[],[minus_or_set_subtract(pos(287,1,123,20,123,33),identifier(pos(288,1,123,20,123,29),xPosition),integer(pos(289,1,123,32,123,33),1)),identifier(pos(290,1,123,35,123,44),yPosition),insert_tail(pos(291,1,123,46,123,93),identifier(pos(292,1,123,46,123,64),visitedPathofRobot),couple(pos(293,1,123,69,123,93),[identifier(pos(294,1,123,69,123,78),xPosition),identifier(pos(295,1,123,84,123,93),yPosition)]))]),assign(pos(296,1,124,9,124,43),[identifier(pos(297,1,124,9,124,22),outputMessage)],[identifier(pos(298,1,124,26,124,43),'SuccessfullyMoved')])]),[if_elsif(pos(299,1,125,5,128,67),not_member(pos(300,1,126,10,126,37),minus_or_set_subtract(pos(301,1,126,10,126,23),identifier(pos(302,1,126,10,126,19),xPosition),integer(pos(303,1,126,22,126,23),1)),identifier(pos(304,1,126,27,126,37),xAxisRobot)),assign(pos(305,1,128,12,128,67),[identifier(pos(306,1,128,12,128,25),outputMessage)],[identifier(pos(307,1,128,29,128,67),'CannotMoveExternalBoundarywallDetected')]))],assign(pos(308,1,130,7,130,58),[identifier(pos(309,1,130,7,130,20),outputMessage)],[identifier(pos(310,1,130,24,130,58),'CannotMoveInternalMazewallDetected')]))),operation(pos(311,1,135,4,138,7),identifier(pos(311,1,135,4,138,7),getPosition),[identifier(pos(312,1,135,4,135,19),currentPosition)],[],block(pos(313,1,136,4,138,7),assign(pos(314,1,137,8,137,51),[identifier(pos(315,1,137,8,137,23),currentPosition)],[set_extension(pos(316,1,137,27,137,51),[couple(pos(317,1,137,28,137,50),[identifier(pos(318,1,137,29,137,38),xPosition),identifier(pos(319,1,137,40,137,49),yPosition)])])]))),operation(pos(320,1,144,4,166,7),identifier(pos(320,1,144,4,166,7),teleport),[identifier(pos(321,1,144,4,144,19),teleportMessage)],[identifier(pos(322,1,144,34,144,44),xCellpoint),identifier(pos(323,1,144,46,144,56),yCellpoint)],precondition(pos(324,1,145,4,166,7),conjunct(pos(325,1,146,8,146,57),member(pos(326,1,146,8,146,31),identifier(pos(327,1,146,8,146,18),xCellpoint),identifier(pos(328,1,146,21,146,31),xAxisRobot)),member(pos(329,1,146,34,146,57),identifier(pos(330,1,146,34,146,44),yCellpoint),identifier(pos(331,1,146,47,146,57),yAxisRobot))),if(pos(332,1,148,8,165,11),conjunct(pos(333,1,149,14,150,99),not_member(pos(334,1,149,14,149,60),couple(pos(335,1,149,14,149,39),[identifier(pos(336,1,149,14,149,24),xCellpoint),identifier(pos(337,1,149,29,149,39),yCellpoint)]),identifier(pos(338,1,149,44,149,60),mazeWallbarriers)),disjunct(pos(339,1,150,15,150,99),not_member(pos(340,1,150,15,150,55),couple(pos(341,1,150,15,150,40),[identifier(pos(342,1,150,15,150,25),xCellpoint),identifier(pos(343,1,150,30,150,40),yCellpoint)]),identifier(pos(344,1,150,45,150,55),exitSquare)),not_member(pos(345,1,150,60,150,99),couple(pos(346,1,150,60,150,83),[identifier(pos(347,1,150,60,150,69),xPosition),identifier(pos(348,1,150,74,150,83),yPosition)]),identifier(pos(349,1,150,88,150,99),entrySquare)))),parallel(pos(350,1,152,12,156,90),[assign(pos(351,1,152,12,152,35),[identifier(pos(352,1,152,12,152,21),xPosition)],[identifier(pos(353,1,152,25,152,35),xCellpoint)]),assign(pos(354,1,153,12,153,35),[identifier(pos(355,1,153,12,153,21),yPosition)],[identifier(pos(356,1,153,25,153,35),yCellpoint)]),assign(pos(357,1,154,12,154,53),[identifier(pos(358,1,154,12,154,27),teleportMessage)],[identifier(pos(359,1,154,31,154,53),'SuccessfullyTeleported')]),assign(pos(360,1,155,8,155,76),[identifier(pos(361,1,155,8,155,26),visitedPathofRobot)],[insert_tail(pos(362,1,155,30,155,76),identifier(pos(363,1,155,30,155,48),visitedPathofRobot),couple(pos(364,1,155,53,155,76),[identifier(pos(365,1,155,53,155,62),xPosition),identifier(pos(366,1,155,67,155,76),yPosition)]))]),operation_call(pos(367,1,156,8,156,18),identifier(pos(368,1,156,8,156,18),updateMaze),[],[identifier(pos(369,1,156,19,156,29),xCellpoint),identifier(pos(370,1,156,31,156,41),yCellpoint),insert_tail(pos(371,1,156,43,156,90),identifier(pos(372,1,156,43,156,61),visitedPathofRobot),couple(pos(373,1,156,66,156,90),[identifier(pos(374,1,156,66,156,75),xPosition),identifier(pos(375,1,156,81,156,90),yPosition)]))])]),[],if(pos(376,1,157,13,164,15),member(pos(377,1,158,18,158,63),couple(pos(378,1,158,18,158,43),[identifier(pos(379,1,158,18,158,28),xCellpoint),identifier(pos(380,1,158,33,158,43),yCellpoint)]),identifier(pos(381,1,158,47,158,63),mazeWallbarriers)),assign(pos(382,1,160,16,160,68),[identifier(pos(383,1,160,16,160,31),teleportMessage)],[identifier(pos(384,1,160,35,160,68),'CannotTeleportToMazeInternalWalls')]),[],assign(pos(385,1,162,13,162,67),[identifier(pos(386,1,162,13,162,28),teleportMessage)],[identifier(pos(387,1,162,32,162,67),'CannotTeleportToExitOrOnStartSquare')])))))])])).