2,324 research outputs found
Discriminator varieties and symbolic computation
AbstractWe look at two aspects of discriminator varieties which could be of considerable interest in symbolic computation:1.discriminator varieties are unitary (i.e., there is always a most general unifier of two unifiable terms), and2.every mathematical problem can be routinely cast in the form†p1 ≈ q1, …, pk ≈ qk implies the equation x ≈ y.Item (l) offers possibilities for implementations in computational logic, and (2) shows that Birkhoff's five rules of inference for equational logic are all one needs to prove theorems in mathematics
Efficient Groundness Analysis in Prolog
Boolean functions can be used to express the groundness of, and trace
grounding dependencies between, program variables in (constraint) logic
programs. In this paper, a variety of issues pertaining to the efficient Prolog
implementation of groundness analysis are investigated, focusing on the domain
of definite Boolean functions, Def. The systematic design of the representation
of an abstract domain is discussed in relation to its impact on the algorithmic
complexity of the domain operations; the most frequently called operations
should be the most lightweight. This methodology is applied to Def, resulting
in a new representation, together with new algorithms for its domain operations
utilising previously unexploited properties of Def -- for instance,
quadratic-time entailment checking. The iteration strategy driving the analysis
is also discussed and a simple, but very effective, optimisation of induced
magic is described. The analysis can be implemented straightforwardly in Prolog
and the use of a non-ground representation results in an efficient, scalable
tool which does not require widening to be invoked, even on the largest
benchmarks. An extensive experimental evaluation is givenComment: 31 pages To appear in Theory and Practice of Logic Programmin
Almost structural completeness; an algebraic approach
A deductive system is structurally complete if its admissible inference rules
are derivable. For several important systems, like modal logic S5, failure of
structural completeness is caused only by the underivability of passive rules,
i.e. rules that can not be applied to theorems of the system. Neglecting
passive rules leads to the notion of almost structural completeness, that
means, derivablity of admissible non-passive rules. Almost structural
completeness for quasivarieties and varieties of general algebras is
investigated here by purely algebraic means. The results apply to all
algebraizable deductive systems.
Firstly, various characterizations of almost structurally complete
quasivarieties are presented. Two of them are general: expressed with finitely
presented algebras, and with subdirectly irreducible algebras. One is
restricted to quasivarieties with finite model property and equationally
definable principal relative congruences, where the condition is verifiable on
finite subdirectly irreducible algebras.
Secondly, examples of almost structurally complete varieties are provided
Particular emphasis is put on varieties of closure algebras, that are known to
constitute adequate semantics for normal extensions of S4 modal logic. A
certain infinite family of such almost structurally complete, but not
structurally complete, varieties is constructed. Every variety from this family
has a finitely presented unifiable algebra which does not embed into any free
algebra for this variety. Hence unification in it is not unitary. This shows
that almost structural completeness is strictly weaker than projective
unification for varieties of closure algebras
Tactics for Reasoning modulo AC in Coq
We present a set of tools for rewriting modulo associativity and
commutativity (AC) in Coq, solving a long-standing practical problem. We use
two building blocks: first, an extensible reflexive decision procedure for
equality modulo AC; second, an OCaml plug-in for pattern matching modulo AC. We
handle associative only operations, neutral elements, uninterpreted function
symbols, and user-defined equivalence relations. By relying on type-classes for
the reification phase, we can infer these properties automatically, so that
end-users do not need to specify which operation is A or AC, or which constant
is a neutral element.Comment: 16
- …