úÎ*Ä% Z      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY Z[\]^_"  !"#$%"  !"#$%" #$% !" "   !" !"#$$%&&&& 'Generate C code. `abcdefgh'''6i();The Stmt monad holds variable declarations and statements. j* True term. + False term. ,Arbitrary constants. -Logical negation. . Logical AND. / Logical OR. 0"The conjunction of a E Bool list. 1"The disjunction of a E Bool list. 21True iff the predicate is true for all elements. 30True iff the predicate is true for any element. 45Equal. 6 Not equal. 7 Less than. 8Greater than. 9Less than or equal. :Greater than or equal. ;$Returns the minimum of two numbers. <*Returns the minimum of a list of numbers. =$Returns the maximum of two numbers. >*Returns the maximum of a list of numbers. ?Limits between min and max. @Multiplication. AFloating point division. BInteger division. CModulo. D;Linear interpolation and extrapolation between two points. EReferences a variable. FConditional expression.  mux test onTrue onFalse GCreates a hierarchical scope. klmHCInput variable declaration. Input variables are initialized to 0. IBoolean variable declaration. J7Boolean variable declaration and immediate assignment. KInt variable declaration. L3Int variable declaration and immediate assignment. MFloat variable declaration. N5Float variable declaration and immediate assignment. OIncrements an E Int. PDecrements an E Int. noQ!Assert that a condition is true. R)Declare an assumption condition is true. SConditional if-else. T!Conditional if without the else. UVerify a program. VGenerate C code. 5 "#%()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV5 #"%*+,E-./0132456798:;<=>?@ABCFDG)IJKLMNH(STOPQRUV/()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW6Computes the greatest common divison of two integers. < Returns true if the computation is done, and the result. XA top level wrapper for gcd'. Y,Build the gcdMain code (i.e. gcd.c, gcd.h). WXYWXYWXYp       !"#$%&'())*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY+,Z[\]^_`abcdefghijkl.mnopqr improve-0.0.2Language.ImProve.TreeLanguage.ImProve.CoreLanguage.ImProve.VerifyLanguage.ImProve.CodeLanguage.ImProveLanguage.ImProve.ExamplesTreeLeafBranchtree StatementNullAssumeAssertSequence AssignFloat AssignInt AssignBoolEMuxGeLeGtLtEqOrAndNotModDivMulSubAddConstRefNumEAllE showConstshowTypezeroVNameverifycode<==Stmttruefalseconstantnot_&&.||.and_or_all_any_imply==./=.<.>.<=.>=.min_minimum_max_maximum_limit*./.div_mod_linearrefmuxscopeinputboolbool'intint'floatfloat'incrdecrassertassumeifelseif_gcd'gcdMaingcdBuildlabelisBranch singleTree mergeTrees insertTreefind'varNamecodeStmtcodeExprindentindent' codeVariablesvarInfo varsInStmt varsInExprAssigngetgetPathvar statementevalStmt