Chapter 9

   [1]Page HistoryLast edited by PBworks 8 years, 7 months ago

                  Visualization of logical formulas

    There is a form of visual presentation, catchy,  understandable
    to all from childhood. This form is the schedule.

                                                       Valery Venda

                        FUNCTIONS AND IMAGING

   - Where can I buy a puppy?

   - In our town, they are sold on the market, but today the market
   is closed. In addition, puppies are sold every day. Puppies are
   quite expensive and some plain - do not know if they like you.

   From overheard conversation clear that the purchase can be  made
   to a puppy  and only  when four conditions  are satisfied  (Fig.
   55):

     * the market is open (this condition is denoted by P);
     * the buyer has the money (Q);
     * Puppies are on sale (R);
     * puppy like (S).

   As a result, we obtain the logical function

   X = P and Q and R and S

   wherein X is "You can buy a puppy?" (Fig. 55).

   In  traditional  programming  languages,  values  ??of   logical
   variables are considered a pair (TRUE, FALSE) or (1, 0). From an
   ergonomic point of view, such an approach can not be  considered
   successful. In fact, the use  of "helluva lot of erudite"  words
   TRUE and FALSE or mysterious numbers  1 and 0 in the example  of
   the puppies  (and  any  other specific  example)  is  frivolous,
   misleading and does not promote an understanding of the issue.

   To improve matters, as the values ??of the logical variables and
   logical functions much better to choose a simple and clear words
   "yes" and "no", the semantics  of which is self-explanatory  and
   understandable even to a child.  On this basis, in the  language
   DRAGON logic functions, variables  and expressions are  regarded
   as so-ations  questions.  Logic function  and  is defined  as  a
   function that takes  the value of  "yes" if all  of the  logical
   variables are set to  "yes." In other  cases, the function  gets
   the value of "no" (Fig. 55) ^1.

   There are two  ways the image  features and languages  ??DRAGON:
   text and visual.  In the  first case,  an icon  of a  "question"
   within which  they  write  a logical  expression  consisting  of
   logical variables connected by logical AND operation marks (Fig.
   56 left). In  another case,  a vertical paint  N Icons  "issue",
   where N - number of logical variables, with each icon recorded a
   boolean variable (Fig. 56 right).

   The visual  formula  in Fig.  56  shows that  both  methods  are
   equivalent. Examples  Fig.  57 confirm  this.  Recommended  best
   practice is a visual way, as it more evident and makes it easier
   to find errors in complex algorithms. It should be stressed that
   the text method is not prohibited,  but use it with caution  and
   only in those cases when the user is convinced of its ability to
   guarantee the  absence of  errors.  Experience shows  that  most
   people  choose  a  more   visual  way  easy.  However,   trained
   professionals who are familiar  with the basics of  mathematical
   logic, sometimes  prefer  a  text method.  Such  people  can  be
   advised to master both.

                      Visualization function or

   Logical OR function  is set  to "yes"  if at  least one  logical
   variable is "yes."  The function is  set to "no"  if all of  the
   logical variables have a value of "no" (Fig. 58).

   In the language  of DRAGON  OR function  can be  written in  two
   ways. If you select text mode, the icon draws a "question"  that
   contains a logical  expression (Fig. 59  left). When the  visual
   method uses  several icons  "issue,"  which combined  the  lower
   output; each icon  writing a boolean  variable (Fig. 59  right).
   From Fig.  59  and  60  it is  evident  that  both  methods  are
   equivalent.

                    Visualization function is not

   The function  W  = Z  function  is  not called  if  the  logical
   variables Z  and  W  are  inverted values,  t.  E.  Satisfy  the
   conditions:

                         if Z = yes, W = no;

                         if Z = no, W = yes.

   The visual formula  in Fig.  61 show  that the  sign of  logical
   negation can be excluded from the dragon-circuit if interchanged
   the words "yes" and "no" on  the outputs of the icon  "question"
   (the icon located in the fork  of the shoulders, should be  left
   in place).

   Exercises in Fig. 62-66 will help the reader to consolidate  the
   material.

               Visualization of complex logic functions

   Consider the function

                X = (A & B and C) or (D and E andF)             (1)

   Fig. 67 shows a  visual way to write  this function. The  figure
   shows that the formula (1) is divided into three parts:

   1) A and B and C; 2) D and E and F; 3) the "OR" operation.

   Function A  and C  and is  represented by  three icons  A, B,  C
   located on the same vertical. Similarly,  paint the D and E  and
   B.Bunch "or" being  implemented by means  of lines that  combine
   lower yields icons C and F at the point K (Fig. 67).

   In formula (1), some  members recorded without logical  negation
   (A, B, D, E), others - negated (B, F). Members without  negation
   transformed into icons  of A,  B, D,  E, whose  lower outlet  is
   marked with the word "yes." Members  of the denial of the  icons
   in the match, and F, where  the lower output is marked with  the
   word "no" (Fig. 67). Other  examples of algorithms that  compute
   complex logic functions are shown in Fig. 68-74.

   These considerations allow us to formulate two theorems.

   Theorem 1. Dragon  diagram containing  logical connectives  AND,
   OR, NOT inside  icons "issue"  can always be  converted into  an
   equivalent diagram  of  a dragon  that  does not  contain  these
   bundles.

   Theorem 2. If some fragment  of a dragon-circuit has one  input,
   two outputs,  and contains  only the  icons of  "question",  the
   first output  function  calculates  the  X,  the  second  output
   computes the logical negation of X (Fig. 67-73).

   The proof of the theorems to the reader.

                             CONCLUSIONS

    1. In complex logic algorithms are often used conditional
       statements with logical expressions. Experience shows that
       such operators are often difficult to understand, which
       often leads to mistakes.
    2. The language used DRAGON visual logic expressions, allowing,
       if desired, to completely eliminate the logical connectives
       AND, OR, NOT of conditional statements.
    3. Visualization of logical formulas in many practically
       important cases, significantly facilitates the understanding
       and reduces the likelihood of errors.

References

   Visible links
   1. https://translate.googleusercontent.com/translate_c?depth=1&hl=en&rurl=translate.google.com&sl=ru&tl=en&u=http://drakon.pbworks.com/w/page-revisions/18205514/%25D0%2593%25D0%25BB%25D0%25B0%25D0%25B2%25D0%25B0%25209&usg=ALkJrhgu2Hu00VwVDt6ad2IOauK9JJWoPA