equal
deleted
inserted
replaced
612 ; |
612 ; |
613 'instantiation' (nameref + 'and') '::' arity 'begin' |
613 'instantiation' (nameref + 'and') '::' arity 'begin' |
614 ; |
614 ; |
615 'instance' |
615 'instance' |
616 ; |
616 ; |
617 'instance' nameref '::' arity |
617 'instance' (nameref + 'and') '::' arity |
618 ; |
618 ; |
619 'subclass' target? nameref |
619 'subclass' target? nameref |
620 ; |
620 ; |
621 'instance' nameref ('<' | subseteq) nameref |
621 'instance' nameref ('<' | subseteq) nameref |
622 ; |
622 ; |
651 to sort \isa{s} at the particular type instance \isa{{\isachardoublequote}{\isacharparenleft}{\isasymalpha}\isactrlsub {\isadigit{1}}\ {\isacharcolon}{\isacharcolon}\ s\isactrlsub {\isadigit{1}}{\isacharcomma}\ {\isasymdots}{\isacharcomma}\ {\isasymalpha}\isactrlsub n\ {\isacharcolon}{\isacharcolon}\ s\isactrlsub n{\isacharparenright}\ t{\isachardoublequote}}. A plain \hyperlink{command.instance}{\mbox{\isa{\isacommand{instance}}}} command in the |
651 to sort \isa{s} at the particular type instance \isa{{\isachardoublequote}{\isacharparenleft}{\isasymalpha}\isactrlsub {\isadigit{1}}\ {\isacharcolon}{\isacharcolon}\ s\isactrlsub {\isadigit{1}}{\isacharcomma}\ {\isasymdots}{\isacharcomma}\ {\isasymalpha}\isactrlsub n\ {\isacharcolon}{\isacharcolon}\ s\isactrlsub n{\isacharparenright}\ t{\isachardoublequote}}. A plain \hyperlink{command.instance}{\mbox{\isa{\isacommand{instance}}}} command in the |
652 target body poses a goal stating these type arities. The target is |
652 target body poses a goal stating these type arities. The target is |
653 concluded by an \indexref{local}{command}{end}\hyperlink{command.local.end}{\mbox{\isa{\isacommand{end}}}} command. |
653 concluded by an \indexref{local}{command}{end}\hyperlink{command.local.end}{\mbox{\isa{\isacommand{end}}}} command. |
654 |
654 |
655 Note that a list of simultaneous type constructors may be given; |
655 Note that a list of simultaneous type constructors may be given; |
656 this corresponds nicely to mutual recursive type definitions, e.g.\ |
656 this corresponds nicely to mutually recursive type definitions, e.g.\ |
657 in Isabelle/HOL. |
657 in Isabelle/HOL. |
658 |
658 |
659 \item \hyperlink{command.instance}{\mbox{\isa{\isacommand{instance}}}} in an instantiation target body sets |
659 \item \hyperlink{command.instance}{\mbox{\isa{\isacommand{instance}}}} in an instantiation target body sets |
660 up a goal stating the type arities claimed at the opening \hyperlink{command.instantiation}{\mbox{\isa{\isacommand{instantiation}}}}. The proof would usually proceed by \hyperlink{method.intro-classes}{\mbox{\isa{intro{\isacharunderscore}classes}}}, and then establish the characteristic theorems of |
660 up a goal stating the type arities claimed at the opening \hyperlink{command.instantiation}{\mbox{\isa{\isacommand{instantiation}}}}. The proof would usually proceed by \hyperlink{method.intro-classes}{\mbox{\isa{intro{\isacharunderscore}classes}}}, and then establish the characteristic theorems of |
661 the type classes involved. After finishing the proof, the |
661 the type classes involved. After finishing the proof, the |