⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 annot_gram.tex

📁 由matlab开发的hybrid系统的描述语言
💻 TEX
字号:
\chapter{Grammar of \hysdel{}}\small\ebnfRule{system}{\terminal{SYSTEM} \nonterminal{ident}\terminal{\{} \nonterminal{interface} \nonterminal{implementation}\terminal{\}}}\ebnfRule{interface}{\terminal{INTERFACE} \terminal{\{}\{\nonterminal{state\_interface} $|$\nonterminal{input\_interface} $|$ \nonterminal{output\_interface}$|$ \nonterminal{parameter\_interface}\} \terminal{\}}}\ebnfRule{state\_interface}{\terminal{STATE} \terminal{\{}\{\nonterminal{real\_state\_interface} $|$\nonterminal{bool\_state\_interface}\} \terminal{\}}}\ebnfRule{real\_state\_interface}{\terminal{REAL} ident[\nonterminal{var\_minmax}] \{\terminal{,} ident[\nonterminal{var\_minmax}]\} \terminal{;}}\ebnfRule{bool\_state\_interface}{\terminal{BOOL} ident\{\terminal{,} ident\} \terminal{;}}\ebnfRule{input\_interface}{\terminal{INPUT} \terminal{\{}\{\nonterminal{real\_input\_interface} $|$\nonterminal{bool\_input\_interface}\} \terminal{\}}}\ebnfRule{real\_input\_interface}{\terminal{REAL} ident[\nonterminal{var\_minmax}] \{\terminal{,} ident[\nonterminal{var\_minmax}]\} \terminal{;}}\ebnfRule{bool\_input\_interface}{\terminal{BOOL} ident\{\terminal{,} ident\} \terminal{;}}\ebnfRule{output\_interface}{\terminal{OUTPUT} \terminal{\{}\{\nonterminal{real\_output\_interface} $|$\nonterminal{bool\_output\_interface}\} \terminal{\}}}\ebnfRule{real\_output\_interface}{\terminal{REAL} ident\{\terminal{,} ident \} \terminal{;}}\ebnfRule{bool\_output\_interface}{\terminal{BOOL} ident\{\terminal{,} ident\} \terminal{;}}\ebnfRule{parameter\_interface}{\terminal{PARAMETER} \terminal{\{}\{\nonterminal{real\_parameter\_interface} $|$\nonterminal{bool\_parameter\_interface}\} \terminal{\}}}\ebnfRule{real\_parameter\_interface}{\terminal{REAL} ident[\terminal{=} \nonterminal{real\_expr}] \{\terminal{,} ident[\terminal{=} \nonterminal{real\_expr}]\} \terminal{;}}\ebnfRule{bool\_parameter\_interface}{\terminal{BOOL} ident[\terminal{=} (\terminal{TRUE} $|$ \terminal{FALSE})]\{\terminal{,} ident [\terminal{=} (\terminal{TRUE} $|$\terminal{FALSE})]\} \terminal{;}}\ebnfRule{var\_minmax}{\terminal{[} \nonterminal{real\_expr}\terminal{,} \nonterminal{real\_expr} \terminal{]}}\ebnfRule{implementation}{\terminal{IMPLEMENTATION} \terminal{\{}[\nonterminal{aux\_impl}] \nonterminal{section\_list}\terminal{\}}}\ebnfRule{aux\_impl}{\terminal{AUX} \terminal{\{}\{\nonterminal{real\_aux\_decl} $|$\nonterminal{bool\_aux\_decl}\} \terminal{\}}}\ebnfRule{real\_aux\_decl}{\terminal{REAL} ident[\nonterminal{var\_minmax}] \{\terminal{,} ident[\nonterminal{var\_minmax}]\} \terminal{;}}\ebnfRule{bool\_aux\_decl}{\terminal{BOOL} ident \{\terminal{,}ident\} \terminal{;}}\ebnfRule{section\_list}{\{\nonterminal{logic\_section} $|$\nonterminal{linear\_section} $|$ \nonterminal{AD\_section} $|$\nonterminal{DA\_section} $|$ \nonterminal{continuous\_section}$|$ \nonterminal{automata\_section} $|$\nonterminal{output\_section} $|$ \nonterminal{must\_section}\}}\ebnfRule{logic\_section}{\terminal{LOGIC} \terminal{\{}\{\nonterminal{logic\_item}\} \terminal{\}}}\ebnfRule{logic\_item}{\ebnfBoolvar \terminal{=}\nonterminal{bool\_expr} \terminal{;}}\ebnfRule{linear\_section}{\terminal{LINEAR} \terminal{\{}\{\nonterminal{linear\_item}\} \terminal{\}}}\ebnfRule{linear\_item}{\ebnfRealvar \terminal{=}\nonterminal{real\_expr} \terminal{;}}\ebnfRule{AD\_section}{\terminal{AD} \terminal{\{}\{\nonterminal{AD\_item}\} \terminal{\}}}\ebnfRule{AD\_item}{\ebnfBoolvar \terminal{=}\nonterminal{real\_expr} ( (\terminal{$<=$} \terminal{0}\nonterminal{minmaxeps}) $|$ (\terminal{$<=$}\nonterminal{real\_expr}) $|$ (\terminal{$>=$}\nonterminal{real\_expr}) )}\ebnfRule{DA\_section}{\terminal{DA} \terminal{\{}\{\nonterminal{DA\_item}\} \terminal{\}}}\ebnfRule{DA\_item}{\ebnfRealvar \terminal{=} \terminal{\{}\terminal{IF} \nonterminal{bool\_expr} \terminal{THEN}\nonterminal{real\_expr} [\nonterminal{minmaxeps}][\terminal{ELSE} \nonterminal{real\_expr}[\nonterminal{minmaxeps}] ] \terminal{\}} \terminal{;}}\ebnfRule{minmaxeps}{\terminal{[} \nonterminal{real\_expr}\terminal{,} \nonterminal{real\_expr} \terminal{,}\nonterminal{real\_expr} \terminal{]}}\ebnfRule{continuous\_section}{\terminal{CONTINUOUS} \terminal{\{}\{\nonterminal{continuous\_item}\} \terminal{\}}}\ebnfRule{continuous\_item}{\ebnfRealvar \terminal{=}\nonterminal{real\_expr} \terminal{;}}\ebnfRule{automata\_section}{\terminal{AUTOMATA} \terminal{\{}\{\nonterminal{automata\_item}\} \terminal{\}}}\ebnfRule{automata\_item}{\ebnfBoolvar \terminal{=}\nonterminal{bool\_expr} \terminal{;}}\ebnfRule{output\_section}{\terminal{OUTPUT} \terminal{\{}\{\nonterminal{real\_output\_item} $|$\nonterminal{bool\_output\_item}\} \terminal{\}}}\ebnfRule{real\_output\_item}{\ebnfRealvar \terminal{=}\nonterminal{real\_expr} \terminal{;}}\ebnfRule{bool\_output\_item}{\ebnfBoolvar \terminal{=}\nonterminal{bool\_expr} \terminal{;}}\ebnfRule{must\_section}{\terminal{MUST} \terminal{\{}\{\nonterminal{real\_must\_item} $|$\nonterminal{bool\_must\_item}\} \terminal{\}}}\ebnfRule{real\_must\_item}{\nonterminal{real\_expr}(\terminal{$<=$} $|$ \terminal{$>=$}) \nonterminal{real\_expr}\terminal{;}}\ebnfRule{bool\_must\_item}{\nonterminal{bool\_expr} \terminal{;}}\ebnfRule{real\_expr}{\nonterminal{real\_terminal\_expr} $|$\nonterminal{real\_unary\_expr} $|$\nonterminal{real\_binary\_expr} $|$ \terminal{(}\nonterminal{real\_expr} \terminal{)}}\ebnfRule{real\_terminal\_expr}{\nonterminal{number} $|$\ebnfRealvar}% $|$ \ebnfParam}\ebnfRule{real\_unary\_expr}{\terminal{(} \terminal{REAL}\nonterminal{bool\_expr} \terminal{)} $|$ \terminal{$-$}\nonterminal{real\_expr} $|$ (\terminal{sin} $|$ \terminal{cos}$|$ \terminal{exp} $|$ \terminal{log} $|$ \terminal{sqrt})\terminal{(} \nonterminal{real\_expr} \terminal{)}}\ebnfRule{real\_binary\_expr}{\nonterminal{real\_expr}(\terminal{+} $|$ \terminal{$-$} $|$ \terminal{$*$} $|$\terminal{/} $|$ \terminal{$\wedge$}) \nonterminal{real\_expr}}\ebnfRule{bool\_expr}{\nonterminal{bool\_terminal\_expr} $|$\nonterminal{bool\_unary\_expr} $|$\nonterminal{bool\_binary\_expr} $|$ \terminal{(}\nonterminal{bool\_expr} \terminal{)}}\ebnfRule{bool\_terminal\_expr}{\terminal{TRUE} $|$\terminal{FALSE} $|$ \ebnfBoolvar $|$}% update when adding params to Bool expr\ebnfRule{bool\_unary\_expr}{(\terminal{$\sim$} $|$ \terminal{!})\nonterminal{bool\_expr}}\ebnfRule{bool\_binary\_expr}{\nonterminal{bool\_expr}(\terminal{$|$} $|$ \terminal{$||$} $|$ \terminal{\&} $|$\terminal{\&\&} $|$ \terminal{$-$$>$} $|$ \terminal{$<$$-$} $|$\terminal{$<$$-$$>$}) \nonterminal{bool\_expr}}\ebnfRule{ident}{\nonterminal{letter} \{\nonterminal{letter} $|$\nonterminal{digit} $|$ \terminal{\_}\}}\ebnfRule{number}{\{\nonterminal{digit}\} (\terminal{.} $|$\nonterminal{digit}) \{\nonterminal{digit}\} [\terminal{E} $|$\terminal{e} [\terminal{-} $|$ \terminal{+}] \nonterminal{digit}\{\nonterminal{digit}\}]}\ebnfRule{letter}{\terminal{a} $|$ \ldots $|$ \terminal{z} $|$\terminal{A} $|$ \ldots $|$ \terminal{Z}}\ebnfRule{digit}{\terminal{0} $|$ \terminal{1} $|$ \ldots  $|$\terminal{9}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -