In universal algebra and in model theory, a structure consists of a set along with a collection of finitary operations and relations which are defined on it. Universal algebra studies structures that generalize the algebraic structures such as groups, rings, fields and vector spaces. The term universal algebra is used for structures with no relation symbols.
more from Wikipedia
Embedding
In mathematics, an embedding (or imbedding) is one instance of some mathematical structure contained within another instance, such as a group that is a subgroup. When some object X is said to be embedded in another object Y, the embedding is given by some injective and structure-preserving map f : X ¿ Y. The precise meaning of "structure-preserving" depends on the kind of mathematical structure of which X and Y are instances.
more from Wikipedia
Semantics
Semantics (from Greek: s¿mantiká, neuter plural of s¿mantikós) is the study of meaning. It focuses on the relation between signifiers, such as words, phrases, signs and symbols, and what they stand for, their denotata. Linguistic semantics is the study of meaning that is used to understand human expression through language. Other forms of semantics include the semantics of programming languages, formal logics, and semiotics.
more from Wikipedia
Typed lambda calculus
A typed lambda calculus is a typed formalism that uses the lambda-symbol to denote anonymous function abstraction. In this context, types are usually objects of a syntactic nature that are assigned to lambda terms; the exact nature of a type depends on the calculus considered (see kinds below).
more from Wikipedia
Lambda calculus
The lambda calculus (also written as ¿-calculus) is a formal system in mathematical logic for expressing computation by way of variable binding and substitution. It was first formulated by Alonzo Church as a way to formalize mathematics through the notion of functions, in contrast to the field of set theory. Although not very successful in that respect, the lambda calculus found early successes in the area of computability theory, such as a negative answer to Hilbert's Entscheidungsproblem.
more from Wikipedia
Type system
A type system associates a type with each computed value. By examining the flow of these values, a type system attempts to ensure or prove that no type errors can occur. The particular type system in question determines exactly what constitutes a type error, but in general the aim is to prevent operations expecting a certain kind of value being used with values for which that operation does not make sense; memory errors will also be prevented.
more from Wikipedia
Completeness
In general, an object is complete if nothing needs to be added to it. This notion is made more specific in various fields.
more from Wikipedia
Static program analysis
Static program analysis (also static code analysis or SCA) is the analysis of computer software that is performed without actually executing programs built from that software (analysis performed on executing programs is known as dynamic analysis). In most cases the analysis is performed on some version of the source code and in the other cases some form of the object code.
more from Wikipedia