doc-src/IsarRef/Thy/Inner_Syntax.thy
changeset 48792 4aa5b965f70e
parent 48119 55c305e29f4b
child 48816 754b09cd616f
equal deleted inserted replaced
48791:9e8f30bfbdca 48792:4aa5b965f70e
    45 
    45 
    46   These diagnostic commands assist interactive development by printing
    46   These diagnostic commands assist interactive development by printing
    47   internal logical entities in a human-readable fashion.
    47   internal logical entities in a human-readable fashion.
    48 
    48 
    49   @{rail "
    49   @{rail "
    50     @@{command typ} @{syntax modes}? @{syntax type}
    50     @@{command typ} @{syntax modes}? @{syntax type} ('::' @{syntax sort})?
    51     ;
    51     ;
    52     @@{command term} @{syntax modes}? @{syntax term}
    52     @@{command term} @{syntax modes}? @{syntax term}
    53     ;
    53     ;
    54     @@{command prop} @{syntax modes}? @{syntax prop}
    54     @@{command prop} @{syntax modes}? @{syntax prop}
    55     ;
    55     ;
    63     @{syntax_def modes}: '(' (@{syntax name} + ) ')'
    63     @{syntax_def modes}: '(' (@{syntax name} + ) ')'
    64   "}
    64   "}
    65 
    65 
    66   \begin{description}
    66   \begin{description}
    67 
    67 
    68   \item @{command "typ"}~@{text \<tau>} reads and prints types of the
    68   \item @{command "typ"}~@{text \<tau>} reads and prints a type expression
    69   meta-logic according to the current theory or proof context.
    69   according to the current context.
       
    70 
       
    71   \item @{command "typ"}~@{text "\<tau> :: s"} uses type-inference to
       
    72   determine the most general way to make @{text "\<tau>"} conform to sort
       
    73   @{text "s"}.  For concrete @{text "\<tau>"} this checks if the type
       
    74   belongs to that sort.  Dummy type parameters ``@{text "_"}''
       
    75   (underscore) are assigned to fresh type variables with most general
       
    76   sorts, according the the principles of type-inference.
    70 
    77 
    71   \item @{command "term"}~@{text t} and @{command "prop"}~@{text \<phi>}
    78   \item @{command "term"}~@{text t} and @{command "prop"}~@{text \<phi>}
    72   read, type-check and print terms or propositions according to the
    79   read, type-check and print terms or propositions according to the
    73   current theory or proof context; the inferred type of @{text t} is
    80   current theory or proof context; the inferred type of @{text t} is
    74   output as well.  Note that these commands are also useful in
    81   output as well.  Note that these commands are also useful in