src/Doc/Isar_Ref/Outer_Syntax.thy
changeset 61439 2bf52eec4e8a
parent 61421 e0825405d398
child 61458 987533262fc2
equal deleted inserted replaced
61438:151f894984d8 61439:2bf52eec4e8a
    47     @@{command help} (@{syntax name} * )
    47     @@{command help} (@{syntax name} * )
    48   \<close>}
    48   \<close>}
    49 
    49 
    50   \begin{description}
    50   \begin{description}
    51 
    51 
    52   \item @{command "print_commands"} prints all outer syntax keywords
    52   \<^descr> @{command "print_commands"} prints all outer syntax keywords
    53   and commands.
    53   and commands.
    54 
    54 
    55   \item @{command "help"}~@{text "pats"} retrieves outer syntax
    55   \<^descr> @{command "help"}~@{text "pats"} retrieves outer syntax
    56   commands according to the specified name patterns.
    56   commands according to the specified name patterns.
    57 
    57 
    58   \end{description}
    58   \end{description}
    59 \<close>
    59 \<close>
    60 
    60 
   503   Note that there are some further ones available, such as for the set
   503   Note that there are some further ones available, such as for the set
   504   of rules declared for simplifications.
   504   of rules declared for simplifications.
   505 
   505 
   506   \begin{description}
   506   \begin{description}
   507 
   507 
   508   \item @{command "print_theory"} prints the main logical content of the
   508   \<^descr> @{command "print_theory"} prints the main logical content of the
   509   background theory; the ``@{text "!"}'' option indicates extra verbosity.
   509   background theory; the ``@{text "!"}'' option indicates extra verbosity.
   510 
   510 
   511   \item @{command "print_definitions"} prints dependencies of definitional
   511   \<^descr> @{command "print_definitions"} prints dependencies of definitional
   512   specifications within the background theory, which may be constants
   512   specifications within the background theory, which may be constants
   513   \secref{sec:consts} or types (\secref{sec:types-pure},
   513   \secref{sec:consts} or types (\secref{sec:types-pure},
   514   \secref{sec:hol-typedef}); the ``@{text "!"}'' option indicates extra
   514   \secref{sec:hol-typedef}); the ``@{text "!"}'' option indicates extra
   515   verbosity.
   515   verbosity.
   516 
   516 
   517   \item @{command "print_methods"} prints all proof methods available in the
   517   \<^descr> @{command "print_methods"} prints all proof methods available in the
   518   current theory context; the ``@{text "!"}'' option indicates extra
   518   current theory context; the ``@{text "!"}'' option indicates extra
   519   verbosity.
   519   verbosity.
   520 
   520 
   521   \item @{command "print_attributes"} prints all attributes available in the
   521   \<^descr> @{command "print_attributes"} prints all attributes available in the
   522   current theory context; the ``@{text "!"}'' option indicates extra
   522   current theory context; the ``@{text "!"}'' option indicates extra
   523   verbosity.
   523   verbosity.
   524 
   524 
   525   \item @{command "print_theorems"} prints theorems of the background theory
   525   \<^descr> @{command "print_theorems"} prints theorems of the background theory
   526   resulting from the last command; the ``@{text "!"}'' option indicates
   526   resulting from the last command; the ``@{text "!"}'' option indicates
   527   extra verbosity.
   527   extra verbosity.
   528 
   528 
   529   \item @{command "print_facts"} prints all local facts of the current
   529   \<^descr> @{command "print_facts"} prints all local facts of the current
   530   context, both named and unnamed ones; the ``@{text "!"}'' option indicates
   530   context, both named and unnamed ones; the ``@{text "!"}'' option indicates
   531   extra verbosity.
   531   extra verbosity.
   532 
   532 
   533   \item @{command "print_term_bindings"} prints all term bindings that
   533   \<^descr> @{command "print_term_bindings"} prints all term bindings that
   534   are present in the context.
   534   are present in the context.
   535 
   535 
   536   \item @{command "find_theorems"}~@{text criteria} retrieves facts
   536   \<^descr> @{command "find_theorems"}~@{text criteria} retrieves facts
   537   from the theory or proof context matching all of given search
   537   from the theory or proof context matching all of given search
   538   criteria.  The criterion @{text "name: p"} selects all theorems
   538   criteria.  The criterion @{text "name: p"} selects all theorems
   539   whose fully qualified name matches pattern @{text p}, which may
   539   whose fully qualified name matches pattern @{text p}, which may
   540   contain ``@{text "*"}'' wildcards.  The criteria @{text intro},
   540   contain ``@{text "*"}'' wildcards.  The criteria @{text intro},
   541   @{text elim}, and @{text dest} select theorems that match the
   541   @{text elim}, and @{text dest} select theorems that match the
   553   yields \emph{all} currently known facts.  An optional limit for the
   553   yields \emph{all} currently known facts.  An optional limit for the
   554   number of printed facts may be given; the default is 40.  By
   554   number of printed facts may be given; the default is 40.  By
   555   default, duplicates are removed from the search result. Use
   555   default, duplicates are removed from the search result. Use
   556   @{text with_dups} to display duplicates.
   556   @{text with_dups} to display duplicates.
   557 
   557 
   558   \item @{command "find_consts"}~@{text criteria} prints all constants
   558   \<^descr> @{command "find_consts"}~@{text criteria} prints all constants
   559   whose type meets all of the given criteria. The criterion @{text
   559   whose type meets all of the given criteria. The criterion @{text
   560   "strict: ty"} is met by any type that matches the type pattern
   560   "strict: ty"} is met by any type that matches the type pattern
   561   @{text ty}.  Patterns may contain both the dummy type ``@{text _}''
   561   @{text ty}.  Patterns may contain both the dummy type ``@{text _}''
   562   and sort constraints. The criterion @{text ty} is similar, but it
   562   and sort constraints. The criterion @{text ty} is similar, but it
   563   also matches against subtypes. The criterion @{text "name: p"} and
   563   also matches against subtypes. The criterion @{text "name: p"} and
   564   the prefix ``@{text "-"}'' function as described for @{command
   564   the prefix ``@{text "-"}'' function as described for @{command
   565   "find_theorems"}.
   565   "find_theorems"}.
   566 
   566 
   567   \item @{command "thm_deps"}~@{text "a\<^sub>1 \<dots> a\<^sub>n"}
   567   \<^descr> @{command "thm_deps"}~@{text "a\<^sub>1 \<dots> a\<^sub>n"}
   568   visualizes dependencies of facts, using Isabelle's graph browser
   568   visualizes dependencies of facts, using Isabelle's graph browser
   569   tool (see also @{cite "isabelle-system"}).
   569   tool (see also @{cite "isabelle-system"}).
   570 
   570 
   571   \item @{command "unused_thms"}~@{text "A\<^sub>1 \<dots> A\<^sub>m - B\<^sub>1 \<dots> B\<^sub>n"}
   571   \<^descr> @{command "unused_thms"}~@{text "A\<^sub>1 \<dots> A\<^sub>m - B\<^sub>1 \<dots> B\<^sub>n"}
   572   displays all theorems that are proved in theories @{text "B\<^sub>1 \<dots> B\<^sub>n"}
   572   displays all theorems that are proved in theories @{text "B\<^sub>1 \<dots> B\<^sub>n"}
   573   or their parents but not in @{text "A\<^sub>1 \<dots> A\<^sub>m"} or their parents and
   573   or their parents but not in @{text "A\<^sub>1 \<dots> A\<^sub>m"} or their parents and
   574   that are never used.
   574   that are never used.
   575   If @{text n} is @{text 0}, the end of the range of theories
   575   If @{text n} is @{text 0}, the end of the range of theories
   576   defaults to the current theory. If no range is specified,
   576   defaults to the current theory. If no range is specified,