CookBook/Solutions.thy
author Christian Urban <urbanc@in.tum.de>
Sat, 29 Nov 2008 21:20:18 +0000
changeset 53 0c3580c831a4
parent 47 4daf913fdbe1
child 56 126646f2aa88
permissions -rw-r--r--
removed the @{ML ...} antiquotation in favour of @{ML_open ...x}

theory Solutions
imports Base
begin

chapter {* Solutions to Most Exercises *}

text {* \solution{fun:revsum} *}

ML {* 
fun rev_sum t =
let
 fun dest_sum (Const (@{const_name plus}, _) $ u $ u') = u' :: dest_sum u
   | dest_sum u = [u]
 in
   foldl1 (HOLogic.mk_binop @{const_name plus}) (dest_sum t)
 end;
*}

text {* \solution{fun:makesum} *}

ML {*
fun make_sum t1 t2 =
    HOLogic.mk_nat (HOLogic.dest_nat t1 + HOLogic.dest_nat t2)
*}

end