Theory Derive
chapter ‹Derive›
text ‹
This theory includes the Isabelle/ML code needed for the derivation and exports the two keywords
\texttt{derive\_generic} and \texttt{derive\_generic\_setup}.
›
theory Derive
imports Main Tagged_Prod_Sum
keywords "derive_generic" "derive_generic_setup" :: thy_goal
begin
context begin
qualified definition iso :: "('a ⇒ 'b) ⇒ ('b ⇒ 'a) ⇒ bool" where
"iso from to = ((∀ a. to (from a) = a) ∧ (∀ b . from (to b) = b))"
lemma iso_intro: "(⋀a. to (from a) = a) ⟹ (⋀b. from (to b) = b) ⟹ iso from to"
unfolding iso_def by simp
end
ML_file ‹derive_util.ML›
ML_file ‹derive_laws.ML›
ML_file ‹derive_setup.ML›
ML_file ‹derive.ML›
end