% The TAME Programming Language glossary % % Copyright (C) 2021 Ryan Specialty Group, LLC. % % Licensed under the Creative Commons Attribution-ShareAlike 4.0 % International License. %% \makeglossaries \newacronym{tamer}{\textsc{Tamer}}{\tame{} in Rust} \newglossaryentry{classification} { name={classification}, description={TODO} } \newglossaryentry{free variable} { name={free variable}, description={a variable that is not a \gls{bound variable}} } \newglossaryentry{bound variable} { name={bound variable}, description={} } \newglossaryentry{predicate} { name={predicate}, description={} } \newglossaryentry{boolean} { name={boolean}, description={a value of \gls{true} or \gls{false}}, symbol={\Bool}, } \newglossaryentry{true} { name={true}, description={boolean value representing ``true''}, symbol={\true}, } \newglossaryentry{false} { name={false}, description={boolean value representing ``false''}, symbol={\false}, } \newglossaryentry{conjunction} { name={conjunction}, description={logical conjunction (``and'')}, symbol={\ensuremath{\logand}}, } \newglossaryentry{disjunction} { name={disjunction}, description={logical disjunction (``or'')}, symbol={\ensuremath{\logor}}, } \newglossaryentry{cardinality} { name={cardinality}, description={number of elements in some set~$S$}, symbol={\ensuremath{|S|}} } \newglossaryentry{family} { name={family}, description={a set sharing the same \gls{index set}}, symbol={\ensuremath{\{A_j\}_{j\in J}}} } \newglossaryentry{index set} { name={index set}, description={a set whose members index members of another set; see also \gls{family}}, } \newglossaryentry{castable} { name={castable}, description={type $A$ is castable to type $B$ if there exists some \gls{surjective} function $A\rightarrow B$} } \newglossaryentry{surjective} { name={surjective}, description={$\forall y\in Y : \exists x\in X : f(x) = y$}, } \newglossaryentry{equivalent} { name={equivalent}, description={an equivalence relation is a reflexive, symmetric, and transitive binary operation}, } \newglossaryentry{logical equivalence} { name={logical equivalence}, description={$p$ and $q$ are logically equivalent ($p\equiv q$) \gls{iff} both $q$ and~$p$ are~\true or both are~\false}, symbol={\ensuremath{\equiv}}, } \newglossaryentry{logical implication} { name={logical implication}, description={}, symbol={\ensuremath{\implies}}, } \newglossaryentry{iff} { name={iff}, description={if and only if}, symbol={\ensuremath{\iff}}, } \newglossaryentry{forall} { name={universal quantification}, description={expresses a predicate that must be satisfied for every element in a \gls{domain}}, symbol={\ensuremath{\forall}}, } \newglossaryentry{exists} { name={existential quantification}, description={expresses a predicate that must be satisfied for some element in a \gls{domain}}, symbol={\ensuremath{\exists}}, } \newglossaryentry{domain} { name={domain of discourse}, description={set of elements over which variables of interest may range}, symbol={\ensuremath{\mathbb{D}}}, } \newglossaryentry{integer} { name={integer}, description={set of all integers}, symbol={\ensuremath{\mathbb{Z}}}, } \newglossaryentry{empty set} { name={empty set}, description={set of zero elements}, symbol={\ensuremath{\emptyset}} }