536 |
536 |
537 \<^descr> @{element "assumes"}~\<open>a: \<phi>\<^sub>1 \<dots> \<phi>\<^sub>n\<close> introduces local premises, similar |
537 \<^descr> @{element "assumes"}~\<open>a: \<phi>\<^sub>1 \<dots> \<phi>\<^sub>n\<close> introduces local premises, similar |
538 to \<^theory_text>\<open>assume\<close> within a proof (cf.\ \secref{sec:proof-context}). |
538 to \<^theory_text>\<open>assume\<close> within a proof (cf.\ \secref{sec:proof-context}). |
539 |
539 |
540 \<^descr> @{element "defines"}~\<open>a: x \<equiv> t\<close> defines a previously declared parameter. |
540 \<^descr> @{element "defines"}~\<open>a: x \<equiv> t\<close> defines a previously declared parameter. |
541 This is similar to \<^theory_text>\<open>def\<close> within a proof (cf.\ |
541 This is similar to \<^theory_text>\<open>define\<close> within a proof (cf.\ |
542 \secref{sec:proof-context}), but @{element "defines"} takes an equational |
542 \secref{sec:proof-context}), but @{element "defines"} is restricted to |
543 proposition instead of variable-term pair. The left-hand side of the |
543 Pure equalities and the defined variable needs to be declared beforehand |
544 equation may have additional arguments, e.g.\ ``@{element "defines"}~\<open>f |
544 via @{element "fixes"}. The left-hand side of the equation may have |
545 x\<^sub>1 \<dots> x\<^sub>n \<equiv> t\<close>''. |
545 additional arguments, e.g.\ ``@{element "defines"}~\<open>f x\<^sub>1 \<dots> x\<^sub>n \<equiv> t\<close>'', |
|
546 which need to be free in the context. |
546 |
547 |
547 \<^descr> @{element "notes"}~\<open>a = b\<^sub>1 \<dots> b\<^sub>n\<close> reconsiders facts within a local |
548 \<^descr> @{element "notes"}~\<open>a = b\<^sub>1 \<dots> b\<^sub>n\<close> reconsiders facts within a local |
548 context. Most notably, this may include arbitrary declarations in any |
549 context. Most notably, this may include arbitrary declarations in any |
549 attribute specifications included here, e.g.\ a local @{attribute simp} |
550 attribute specifications included here, e.g.\ a local @{attribute simp} |
550 rule. |
551 rule. |