-
Stephanie Weirich
Research Apprentice, 1993 NPAC REU Program
Computer Science Major, Rice University
Chilukuri K. Mohan
Associate Professor, School of Computer and Information Science,
Syracuse University
mohan@top.syr.edu
Propositional Logic
The object of propositional logic is to represent the connections
between propositions or formulas and from them draw conclusions
about them. A typical proposition might be "Lenin is alive." or "This is
a proposition." Single propositions are represented as literals and the
connection of literals is a clause. For example: Let
represent "Lenin is alive" and let
represent "This is a proposition."
represents the clause, "Lenin is alive or this is a proposition."
Furthermore, the literal
represents the clause, "Lenin is not alive."
Proof by Contradiction
Given a set of clauses and a goal, it is possible to prove the goal clause
is derivable from the given clauses if the negation of the goal clause
implies a contradiction. Suppose I wanted to prove Lenin is alive. To
do so I would assume that Lenin is dead and try to find a contradiction
from that, i.e. He's standing here next to me, only living people stand
next to me, living people are not dead, so Lenin can't be dead, he must
be alive, etc.
Genetic Algorithms
Genetic Algorithms are used in optimization to find the best solution based on
a number of parameters. They are, in essence, a metaphor to the natural
biological process of evolution.
A program utilizing such an algorithm will encode its
parameters in "genes" which will make up many "chromosomes."Each chromosome
will represent an entire solution to a problem, based upon the variations
within its genes.
The algorithm will then perform operations on the chromosomes to find the
most optimal solution. Typical operations include crossover and mutation.
Crossover is analogous to the biological process of mating, where the genes
between two individuals are randomly combined to form an offspring. The new
chromosome has a complete set of genes, some from each parent. Mutation is
carried out by randomly changing a gene in an individual to form a new one
asexually. Once a new population is formed, it is evaluated with the old one
and each chromosome is assigned a fitness, describing how close it is to the
optimal solution. Only the most fit individuals are retained for the next
generation, in a method similar to "survival of the fittest."
Using Genetic Algorithms in Propositional Logic
With proof by contradiction, propositional logic becomes a
search problem. Automated reasoning programs search for the
contradiction derived from a set of clauses. Such a contradiction
arises from resolving two unit clauses such as
and
.
Resolving clauses is simply comparing two with such opposite
literals and drawing inferences from them. As a search problem,
automated reasoning becomes suitable for some of the
methodology of genetic algorithms. Each clause can be thought
of as an individual chromosome, each literal a gene. Resolution
becomes crossover as the new resultant clause will contain
literals found in the parent clauses. e.g.
and
will resolve to
.
Since the contradiction arises from resolving
two short unit length clauses together, the length of the clause
serves as a measure of fitness. All clauses must be kept, but not
all need to be resolved every generation, only the most fit ones.
To simulate mutation, the clauses can't be changed either, but
longer clauses which would not ordinarily have a high
probability of being resolved can be considered.
Parallel Processing
Each processor contains chromosomes which mate with each other in parallel.
Diversity is maintained by passing new chromosomes between the processors.
Research paper
"Proof by Contradiction for Parallel Genetic Algorithms for Automated Reasoning"
in Bogucz, E.A., and Weinman, V.E., editors,
"Journal of Undergraduate Research in High-Performance Computing,"
Volume 3, NPAC technical report SCCS-576, November 1993.
1993 Research Experiences for Undergraduates Program
in High-Performance Computing,
Northeast Parallel Architectures Center, Syracuse University,
reu-info@npac.syr.edu