equal
deleted
inserted
replaced
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 |