%query 1 * cls_sound (run (c_app ~ c_fix ~ c_lam ~ c_s ~ c_z ~ c_add1 ~ c_apply ~ c_case ~ c_1 ~ c_branch_s ~ c_s ~ c_s ~ c_app ~ c_^ ~ c_^ ~ c_1+ ~ c_fix ~ c_lam ~ c_1 ~ c_apply ~ c_case ~ c_1 ~ c_branch_z ~ c_z ~ c_add1 ~ c_add1 ~ id)) D. %{ % Kills SML 110 right now! %query 1 1 cev_complete (fev_letn (fev_letn (fev_app (fev_case_s (fev_app (fev_case_s (fev_s (fev_app (fev_case_s (fev_s (fev_app (fev_case_s (fev_s (fev_app (fev_case_z fev_1 (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam fev_1 (fev_^ (fev_^ (fev_^ (fev_1+ (fev_fix fev_lam)))))))) (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam fev_1 (fev_^ (fev_^ (fev_^ (fev_1+ (fev_fix fev_lam)))))))) (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam fev_1 (fev_^ (fev_^ (fev_^ (fev_1+ (fev_fix fev_lam)))))))) (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam (fev_app (fev_case_s (fev_app (fev_case_z fev_1 (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam (fev_app (fev_case_z fev_z (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam fev_1 (fev_^ (fev_^ (fev_^ (fev_1+ (fev_fix fev_lam))))))) (fev_^ (fev_^ (fev_^ (fev_^+ (fev_1+ (fev_fix fev_lam)))))))) (fev_^ fev_1)) (fev_^ fev_1) (fev_app fev_lam fev_1 (fev_^ (fev_^ (fev_^ (fev_1+ (fev_fix fev_lam))))))) (fev_^ (fev_^ (fev_^ (fev_^+ (fev_1+ (fev_fix fev_lam)))))))) (fev_^ fev_1)) (fev_s (fev_s (fev_s fev_z))) (fev_app fev_lam (fev_s (fev_s fev_z)) (fev_1+ (fev_fix fev_lam)))))) C. }% %{ sigma [D:feval empty (s' z') W] cev_complete D C. sigma [D:feval empty (app' (lam' 1) z') W] cev_complete D C. % Doubling 1 sigma [D:feval empty (app' (fix' (lam' (case' 1 z' (s' (s' (app' (1 ^ ^) 1)))))) (s' z')) W] cev_complete D C. }% %{ % This is VERY slow % Multiplication: 2 * 3 = 6. sigma [D:feval empty (let' (fix' (lam' (lam' (case' (1 ^) 1 (s' (app' (app' (1 ^ ^ ^) 1) (1 ^))))))) (let' (fix' (lam' (lam' (case' (1 ^) z' (app' (app' (1 ^ ^ ^ ^) (app' (app' (1 ^ ^ ^) 1) (1 ^))) (1 ^)))))) (app' (app' 1 (s' (s' z'))) (s' (s' (s' z')))))) W] cev_complete D C. }%