Orthogonality (term Rewriting)
   HOME
*





Orthogonality (term Rewriting)
Orthogonality as a property of term rewriting systems (TRSs) describes where the reduction rules of the system are all left-linear, that is each variable occurs only once on the left hand side of each reduction rule, and there is no overlap between them, i.e. the TRS has no critical pairs. For example D(x,x) \to E is not left-linear. Orthogonal TRSs have the consequent property that all reducible expressions (redexes) within a term are completely disjoint -- that is, the redexes share no common function symbol. For example, the TRS with reduction rules \begin \rho_1:\ & f(x,y) & \rightarrow & g(y) \\ \rho_2:\ & h(y) & \rightarrow & f(g(y), y) \end is orthogonal -- it is easy to observe that each reduction rule is left-linear, and the left hand side of each reduction rule shares no function symbol in common, so there is no overlap. Orthogonal TRSs are confluent In geography, a confluence (also: ''conflux'') occurs where two or more flowing bodies of water join to form a sin ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Term Rewriting System
In mathematics, computer science, and logic, rewriting covers a wide range of methods of replacing subterms of a formula with other terms. Such methods may be achieved by rewriting systems (also known as rewrite systems, rewrite engines, or reduction systems). In their most basic form, they consist of a set of objects, plus relations on how to transform those objects. Rewriting can be non-deterministic. One rule to rewrite a term could be applied in many different ways to that term, or more than one rule could be applicable. Rewriting systems then do not provide an algorithm for changing one term to another, but a set of possible rule applications. When combined with an appropriate algorithm, however, rewrite systems can be viewed as computer programs, and several theorem provers and declarative programming languages are based on term rewriting. Example cases Logic In logic, the procedure for obtaining the conjunctive normal form (CNF) of a formula can be implemented as a ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Overlap (term Rewriting)
In mathematics, computer science and logic, overlap, as a property of the reduction rules in term rewriting system, describes a situation where a number of different reduction rules specify potentially contradictory ways of reducing a reducible expression, also known as a redex, within a term Term may refer to: * Terminology, or term, a noun or compound word used in a specific context, in particular: **Technical term, part of the specialized vocabulary of a particular field, specifically: ***Scientific terminology, terms used by scient .... More precisely, if a number of different reduction rules share function symbols on the left-hand side, overlap can occur. Often we do not consider trivial overlap with a redex and itself. Examples Consider the term rewriting system defined by the following reduction rules: : \rho_1\ :\ f(g(x), y) \rightarrow y : \rho_2\ :\ g(x) \rightarrow f(x, x) The term f(g(x), y) can be reduced via ρ1 to yield , but it can also be reduced via ρ2 ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Critical Pair (logic)
A critical pair arises in a term rewriting system when two rewrite rules overlap to yield two different terms. In more detail, (''t''1, ''t''2) is a critical pair if there is a term ''t'' for which two different applications of a rewrite rule (either the same rule applied differently, or two different rules) yield the terms ''t''1 and ''t''2. Definitions The actual definition of a critical pair is slightly more involved as it excludes pairs that can be obtained from critical pairs by substitution and orients the pair based on the overlap. Specifically, for a pair of overlapping rules \rho_0 : l_0 \to r_0 and \rho_1 : l_1 \to r_1, with the overlap being that l_0 = D /math> for some non-empty context D ;/math>, and the term s (that is not a variable) matches l_1 under some substitutions s \sigma = l_1 \tau that are most general, the critical pair is (D \sigma _1 \tau r_0 \sigma). When both sides of the critical pair can reduce to the same term, the critical pair is called ''con ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Confluence (term Rewriting)
In computer science, confluence is a property of rewriting systems, describing which terms in such a system can be rewritten in more than one way, to yield the same result. This article describes the properties in the most abstract setting of an abstract rewriting system. Motivating examples The usual rules of elementary arithmetic form an abstract rewriting system. For example, the expression (11 + 9) × (2 + 4) can be evaluated starting either at the left or at the right parentheses; however, in both cases the same result is eventually obtained. If every arithmetic expression evaluates to the same result regardless of reduction strategy, the arithmetic rewriting system is said to be ground-confluent. Arithmetic rewriting systems may be confluent or only ground-confluent depending on details of the rewriting system. A second, more abstract example is obtained from the following proof of each group element equalling the inverse of its inverse: This proof starts fr ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]