Programmable logic deviceA programmable logic device (PLD) is an electronic component used to build reconfigurable digital circuits. Unlike digital logic constructed using discrete logic gates with fixed functions, a PLD has an undefined function at the time of manufacture. Before the PLD can be used in a circuit it must be programmed to implement the desired function. Compared to fixed logic devices, programmable logic devices simplify the design of complex logic and may offer superior performance.
Logic synthesisIn computer engineering, logic synthesis is a process by which an abstract specification of desired circuit behavior, typically at register transfer level (RTL), is turned into a design implementation in terms of logic gates, typically by a computer program called a synthesis tool. Common examples of this process include synthesis of designs specified in hardware description languages, including VHDL and Verilog. Some synthesis tools generate bitstreams for programmable logic devices such as PALs or FPGAs, while others target the creation of ASICs.
Functional completenessIn logic, a functionally complete set of logical connectives or Boolean operators is one which can be used to express all possible truth tables by combining members of the set into a Boolean expression. A well-known complete set of connectives is { AND, NOT }. Each of the singleton sets { NAND } and { NOR } is functionally complete. However, the set { AND, OR } is incomplete, due to its inability to express NOT. A gate or set of gates which is functionally complete can also be called a universal gate / gates.
UltrafilterIn the mathematical field of order theory, an ultrafilter on a given partially ordered set (or "poset") is a certain subset of namely a maximal filter on that is, a proper filter on that cannot be enlarged to a bigger proper filter on If is an arbitrary set, its power set ordered by set inclusion, is always a Boolean algebra and hence a poset, and ultrafilters on are usually called . An ultrafilter on a set may be considered as a finitely additive measure on .
Binary decision diagramIn computer science, a binary decision diagram (BDD) or branching program is a data structure that is used to represent a Boolean function. On a more abstract level, BDDs can be considered as a compressed representation of sets or relations. Unlike other compressed representations, operations are performed directly on the compressed representation, i.e. without decompression. Similar data structures include negation normal form (NNF), Zhegalkin polynomials, and propositional directed acyclic graphs (PDAG).
Computable functionComputable functions are the basic objects of study in computability theory. Computable functions are the formalized analogue of the intuitive notion of algorithms, in the sense that a function is computable if there exists an algorithm that can do the job of the function, i.e. given an input of the function domain it can return the corresponding output. Computable functions are used to discuss computability without referring to any concrete model of computation such as Turing machines or register machines.
SuperoptimizationSuperoptimization is the process where a compiler automatically finds the optimal sequence for a loop-free sequence of instructions. Real-world compilers generally cannot produce genuinely optimal code, and while most standard compiler optimizations only improve code partly, a superoptimizer's goal is to find the optimal sequence, the canonical form. Superoptimizers can be used to improve conventional optimizers by highlighting missed opportunities so a human can write additional rules.
Neoclassical synthesisThe neoclassical synthesis (NCS), neoclassical–Keynesian synthesis, or just neo-Keynesianism was a neoclassical economics academic movement and paradigm in economics that worked towards reconciling the macroeconomic thought of John Maynard Keynes in his book The General Theory of Employment, Interest and Money (1936). It was formulated most notably by John Hicks (1937), Franco Modigliani (1944), and Paul Samuelson (1948), who dominated economics in the post-war period and formed the mainstream of macroeconomic thought in the 1950s, 60s, and 70s.
Many-valued logicMany-valued logic (also multi- or multiple-valued logic) is a propositional calculus in which there are more than two truth values. Traditionally, in Aristotle's logical calculus, there were only two possible values (i.e., "true" and "false") for any proposition. Classical two-valued logic may be extended to n-valued logic for n greater than 2. Those most popular in the literature are three-valued (e.g.
Ideal (order theory)In mathematical order theory, an ideal is a special subset of a partially ordered set (poset). Although this term historically was derived from the notion of a ring ideal of abstract algebra, it has subsequently been generalized to a different notion. Ideals are of great importance for many constructions in order and lattice theory. A subset I of a partially ordered set is an ideal, if the following conditions hold: I is non-empty, for every x in I and y in P, y ≤ x implies that y is in I (I is a lower set), for every x, y in I, there is some element z in I, such that x ≤ z and y ≤ z (I is a directed set).