 Let us think of the expressions of a language as a set upon which a number of operations (syntactic rules) are defined. Let us require that syntactic rules always apply to a fixed number of expressions and yield a single expression, and let us allow that syntactic rules be undefined for certain expressions. So, a syntactic algebra is a partial algebra \(\mathbf{E} = \langle E, (F_{\gamma})_{\gamma \in \Gamma}\rangle\), where E is the set of (simple and complex) expressions and every \(F_{\gamma}\) is a partial syntactic operation on E with a fixed arity. The syntactic algebra is interpreted through a meaning-assignment m, a function from E to M, the set of available meanings for the expressions of E.