home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of A1200
/
World_Of_A1200.iso
/
programs
/
misc
/
minterm
/
minterm.eng
< prev
next >
Wrap
Text File
|
1995-02-27
|
8KB
|
220 lines
Minterm 2.0
===========
I. Introducing
--------------
Minterm is a program which was created to minimize formulas of the boolean
algebra with up to 15 variables, it uses the algorithm of Quine-McCluskey to do
his job. Minterm is easy to use and uses the advantages of the AmigaOS 2.04 and
has a very (i hope so) nice "look and feel", so is it simple to get correct
results.
Minterm is FREEWARE use it, as much as you want. But i will be very happy
when i receive a postcard, with a nice view of your city, when you use my
program frequently.
Minterm V 2.0 needs AmigaOS 2.04 or higher. For all users of AmigaOS 1.2/1.3
is Minterm V1.1 included. Please refer the end of this DOC for special infor-
mation about V1.1.
ATTENTION !!!
-------------
I test my program very abundant, but there is no guarantee, that there is no
bug in the program and there is no guarantee that the results are always
correct.
II. The user-interface
----------------------
CLOSEGADET
You can use it to terminate the program. It have only a effect, when program
waits for a user intput. It is inaktiv, when the program is in progress.
RESET-gadget
This gadget resets the program after a formula had been minimized, it brings the
program in right state to minimize a new formula.
String-gadget
You must write your formula into that gadget, when you want to minimize it and
push RETURN to start the minimization. You find this gadget at the buttom of
the minterm-window.
Listview-gadget
You find this gadget is in the right of the minterm-window. In this gadget the
result of the prozess of solution is shown. In every line of the gadget is one
term of the solution. With the slider on the right side you can scroll through
the terms.
Cycle-gadget
This gadget is under the listview-gadget. You can use this gadget to switch
through solutions that are possible for your formula. If there is only one
solution, the gadget do not react, when you push it.
Information-gadgets
This gadgets you find in the upper left corner of the minterm-window. They
are read-only and show you how much terms your fomula has, how many
variables were found and in which stage of the solution the program is.
There are 5 stages (or phases):
Get formula -> Program waits for the formula
Transforming -> Program transforms terms in a bit pattern and complets terms.
Minimizing -> Minimizing of the minterms
Solving -> Search for the correct combination of prim- and minterms.
Show solution-> Shows you the solutions of your problem.
III How to use
--------------
There are three ways to enter the formula in the string-gadget.
1) As formula of complete or incomplete terms.
2) As a number of termnummers.
3) As a mixed form of terms and termnumbers.
I think the best way of explanation are some examples. For all the following
examples we take this formula.
_ _ _
abc + abc + abc
This is a typical boolean formula in short form. The long form is:
NOT a AND b AND c OR NOT a AND b AND NOT c OR a AND b AND c
1) As formula of complete or incomplete terms
Complete terms
You must enter example as:
-abc + -ab-c + abc
_
Minterm expect a negativ variable (NOT a / a) as -a.
Attention:
- Minterm uses the first 15 lowercase characters as variables.
- Your first variable MUST be named a, the second b and so on.
- A term is a string of characters and the '-' sign. For example -ab-c.
- Minterm shows his solution in the great gadget in the right of the window.
in each line one term of the solution. This terms must be concatinate with
a + sign or the logical OR. The solution of the example is shown as
-ab
bc
must been seen as
_
ab + bc or NOT a AND b OR b AND c
Incomplete terms
A complete term includes always all variables, a incomplete term includes only
some variables.
Example:
-abc + -ab-c + bc
In this fomula in minterm notation the last term is incomplete. Minterm accept
this and completes such terms internaly and calculates the correct result.
2) As a number of termnumbers
A termnumber is the position of a term in the logical table of true. The fol-
lowing example help us to determine the termnumber for the example formula.
Table of true
n c ! b ! a ! Q
---+---+---+---
0 0 ! 0 ! 0 ! 0
1 0 ! 0 ! 1 ! 0
2 0 ! 1 ! 0 ! 1
3 0 ! 1 ! 1 ! 0
4 1 ! 0 ! 0 ! 0
5 1 ! 0 ! 1 ! 0
6 1 ! 1 ! 0 ! 1
7 1 ! 1 ! 1 ! 1
In this table are all possible combination of the variables are listet. At the
left of the table i have numerate the lines of this table. This are the term-
numbers.
Attention:
- You must start with variable a at the right of the table and the next
variables must follow left from the a, as show in the example.
- The first line of the table is always 0.
The example formula can be enter as termnumbers as follow.
2 + 6 + 7
The advantage of this form of input is, that there
1. less characters and
2. the most boolean formulas are create with "tables of true" and so you cant
save much time when you enter it in this form.
3) As a mixed form of terms and termnumbers.
I do not know any use of this form, but minterm works with this form of input.
Attention:
- If you mixed a number and characters in one term, minterm gets the number.
Example: -a3c
Minterm takes the 3 from the table of true and ignores -ac.
A correct examples for the mixed form is:
-abc + 6 + abc
This formula has same solution as "-abc + -ab-c + abc", because is the same
formula.
IV. Error messages
------------------
All the following messages are shown in a requester. In most cases you have
three gadgets to naswer. Click on your choise and the program will react.
No more memory
Not enough memory for table
The program needs more memory, but there is not enough in your computer.
Too much restterms
The program can only manage 32 restterms. Your fomula has more than 32. Sorry
Minterm V2.0 can not solve your problem. This problem never occurs during
testing.
No formulas
You has not enter a formula.
Too much variables
Your formula has too much variables. Only 15 are allowed (a to o).
Formula is always true
This is only a informational message. This means all combination of the
variables are true. A example with 2 variables is:
ab + -ab + a-b + -a-b
V. Support
----------
This is a freeware program, therefor only a minor support. If you find a bug
in the program. Send me a discription of the fault with all the text you have
enter into the program and a short discription of your hardware. Then I will fix
the bug and put the next release into the Public domain.
Please do not send diskettes, i can not send an update to you.
Address:
Achim Pankalla
Hansa Strasse 12
D-2970 Emden 1
Germany (West)
VI. Minterm V1.1
----------------
Minterm V1.1 use the same minimization algorithm as minterm V2.0. But V1.1 is
older than V2.0 and has only "quick and dirty" user interface.
Here are the diference betwen V1.1 and V2.0:
- Before you enter the terms you must enter the number of variables in the
"Number of vars." gadget.
- Than you can enter the terms or termnumbers in the "Term/Termnumber"-gadget.
Attention! You must enter the terms separate and not as formula.
Example: Formula: a-b + ab
Input : a-b <RETURN>
ab <RETURN>
- To start the minimization press the "minimize"-gadget.
- The progess of the minimization is shown in the workbench-title.
- The solution is shown in seperate windows. Push the close-button to see the
next solution. Note: If you push the closegadget, you can not get back.
- If you want to minimize another formula, you must leave the program and start
it again.
- All errors are shown in the main window. You must terminate and restart the
program to recover from an error.