minus X s Y pred minus X Y minus X 0 X pred s X X le s X s Y le X Y le s X 0 false le 0 Y true gcd 0 Y 0 gcd s X 0 s X gcd s X s Y if le Y X s X s Y if true s X s Y gcd minus X Y s Y if false s X s Y gcd minus Y X s X minus 2 s 1 pred 1 0 0 le 2 false 0 true 0 gcd 2 if 3 INNERMOST ./TRS/Rubio/gcd.trs