GUI for AND,OR, NOT?

GUI for AND,OR, NOT?

Post by Michael Va » Tue, 27 Apr 2004 15:16:45


Hello,

for my application I think of support for OR and NOT when selecting
keywords from a list. The standard now is AND.

Are there any examples/models for visual support of AND-OR-NOT
structures?
I wouldn't like to have lots of graphics with arrows here and there.

I think of some kind of support with colors (groups of OR-keywords get
a unique background color, NOT-keywords of course get a red
background), supported by tree-like indents for complex structures.

BTW: Searching with google for "AND OR NOT" gives no result, just the
message, that these common words have been eliminated from the search
string.:-)

Michael

--
bookkey - Bookmarks by Keywords.
With a new way to handle a large number of keywords.
http://www.yqcomputer.com/
 
 
 

GUI for AND,OR, NOT?

Post by bks » Tue, 27 Apr 2004 21:41:32

In article < XXXX@XXXXX.COM >,


< http://www.yqcomputer.com/ ;

HTH,
--bks

 
 
 

GUI for AND,OR, NOT?

Post by Jenny Brie » Wed, 28 Apr 2004 02:07:41

On Mon, 26 Apr 2004 08:16:45 +0200, Michael Valentiner-Branth


To include common words in a Google search you need to put a + before
them. a search for '"+AND +OR +NOT" GUI' produced over 3,000 hits.

I haven't seen this idea anywhere, but I think it might be useful to
drag keywords onto a 2-dimensional grid. The rows are ANDed and the
columns are ORed. Clicking on a keyword already placed in the grid
NOTs it.

The search is defined like this:

Starting that the top left
1 AND the words on the first line until you reach a blank
2 Move to the next row (directly beneath the starting box)
3 If it contains a word, repeat 1 and 2 and OR the result.
4 Move to the next unsearched column and repeat 1-3, ANDing the result
5 Move to the next unsearched row and repeat 1-4, ORing the result

View the following in a fixed font. Lower case represents NOT:

I think this can represent any expression you are likely to need,
bearing in mind that NOT( A AND B) = a OR b, and NOT(A OR B) = a AND
b.

A XOR B = (A AND b) OR (B AND a)

and so can be represented as:

A b
B a

(A OR B) AND (C OR D)

would be:

A C
B D

To take a complex example at random:

( A AND (B OR ( C AND NOT D))) AND NOT ( E AND F)

can be represented on the grid as:

A B e
C d f

Depending on the application, the resulting view might be updated
whenever the grid is changed. A further refinement might be to allow
searches to be named and saved, so that they may be dropped into one
box of a more complex search.
 
 
 

GUI for AND,OR, NOT?

Post by Bjorn Rees » Wed, 28 Apr 2004 03:34:58


We have a filtering mechanism in an application that uses tree-like
indentation. It works for simple expressions, but becomes more
difficult to comprehend for larger expressions.

If you support nested expressions, e.g. "(A OR B) AND C", you may
consider creating each sub-expression as a named expression, e.g.
"D = A OR B" followed by "D AND C".

If you have a simpler structure I'd suggest that you'll have a look
at the Outlook rule wizard.

Another issue to consider is that the word the daily use of AND/OR
can have the opposite meaning of their logical counterparts. That
is, the sentence "choose between A and B" is logically "A OR B".
As humans may misinterpret AND/OR, you may consider using terms
such as "all of:" for AND, and "any of:" or "at least one of:"
instead OR (and "except" instead of NOT.)

--
mail1dotstofanetdotdk
 
 
 

GUI for AND,OR, NOT?

Post by bks » Wed, 28 Apr 2004 04:54:31


Any interface that attempts to implement OR is doomed to failure:

You may have toast and jam or hash browns.
You may have toast and fried or boiled eggs.
You may have toast and eggs or pancakes today.

--bks
 
 
 

GUI for AND,OR, NOT?

Post by Jonathan S » Wed, 28 Apr 2004 08:05:08

I would like to see some discussion of whether and when a GUI -- any GUI --
can be superior to a textual interface for this task. I suggest that in the
general case it cannot.

Software developers have adopted boolean notation (which predates software
by a century or so) because it is ideally suited to expressing logical
relationships. None of the graphical alternatives I have seen come close.
Nor do the simplified text systems, such as the search syntax used on eBay.

I remember an incident from my early working life in which I developed a
program for comparing two addresses, such as "1553 West 53rd St." and "1553
W 53 Street," and determining whether they were the same, different, or
ambiguous. When the program was done, I was asked to write a document to
help my company's salespeople explain how it reached its conclusions in
particular cases. I decided to do this by expressing the program's logic in
pseudocode (English semantics with simplified programming syntax). I added a
one-page introduction to explain how to read pseudocode.

The sales manager thought the document was "too technical" for the
salespeople to understand, so he rewrote it in "plain English." When I saw
the result, my jaw dropped. It was largely gibberish. It took me a day of
hard work to figure out what it meant, and then I realized that he got it
wrong. I never learned whether any of the salesman learned to use my
pseudocode (I suspect they were never given a chance), but I am dead certain
that none of them were ever able to use their boss's simplified version.

I think the problem of describing boolean logic is the same as the problem
of describing program logic in this respect. It must be approached by
teaching the formal notation, because the material is inherently abstract. A
graphical approach to it is inevitably awkward, and for complex problems it
is either inadequate or confusing.

I think a GUI for building boolean expressions, as opposed to replacing
them, could be made to work well. The user would arrange expression elements
by dragging them around the screen instead of by typing, and the program
could format things legibly on request.
 
 
 

GUI for AND,OR, NOT?

Post by bks » Wed, 28 Apr 2004 08:25:02

In article <EAgjc.10632$ XXXX@XXXXX.COM >,


That's nothing. I gave a talk to a group of biologists and was
criticized for using the word 'algorithm'.

--bks
 
 
 

GUI for AND,OR, NOT?

Post by Michael Va » Wed, 28 Apr 2004 18:14:48


I would not say "*the* formal notation" but "some kind of ...".
And my idea is to replace or support this formal notation by graphical
elements like background color and/or indents (or similar).

I don't think that a text-based formal notation is easier with complex
problems.:-) They are and stay complex.
And I don't think that my application will have to deal with such complex
problems.

That's what I was talking about.
What do yu mean with "building, as opposed to replacing" in this context?

Michael
--
bookkey, Bookmarks by Keywords.
With a new way to handle a large number of keywords.
http://www.yqcomputer.com/
 
 
 

GUI for AND,OR, NOT?

Post by Michael Va » Wed, 28 Apr 2004 18:14:49


Very interesting! Which application? Is it a public/shareware one, so
that I can download it somewhere? I didn't find anything like it at
stofanet. Or can you point me to some documentation with some nice
pictures? Or send me some? (BTW: VORNAME in my email-adress has to be
replaced with "michael")

A good point, thanks. But I hope, with my graphical support I won't
need any of these words.:-)

Michael
--
bookkey, Bookmarks by Keywords.
With a new way to handle a large number of keywords.
http://www.yqcomputer.com/
 
 
 

GUI for AND,OR, NOT?

Post by Jay Le » Wed, 28 Apr 2004 21:56:03

I gave presentation to a room full of MDs. They nodded their heads
appropriately and on cue so I assumed that they were with me.
Afterwards, one of them (a friend) said that its was unlikely that any
of them understood very much but that none would admit it in front of
the others.

On man's jargon another man's inadequate vocabulary.

In article <c6k5oe$b30$ XXXX@XXXXX.COM >,
 
 
 

GUI for AND,OR, NOT?

Post by Jonathan S » Wed, 28 Apr 2004 22:52:26


problem
abstract. A

I said "THE formal notation" because there IS one standard formal notation
for this task. To use an alternative you would have to invent it (or
excavate it from some obscure source, which boils down to the same thing).
That would be unwise for the same reason that teaching typing with the
Dvorak keyboard is unwise: whatever its inherent advantages, they are
outweighed by the fact that the rest of the world uses different
conventions.



I mean that the user will learn to think about logical expressions in
boolean notation, and the software will display them in a form which a
person familiar with boolean notation would immediately recognize, but the
user will interact with the computer through some interface that offers more
support than 96 ASCII characters. It does sound like we are talking about
the same thing, or very nearly.
 
 
 

GUI for AND,OR, NOT?

Post by Bjorn Rees » Thu, 29 Apr 2004 03:46:45


You're in luck (well, sort of.) I just recalled that a PhD student
once described the filtering mechanism in a paper. Unfortunately,
his main aim was to investigate software reuse, not user interfaces,
and the only picture (Figure 8) doesn't really show the indentation.
So it may not be entirely what you are looking for, but here it is:

http://www.yqcomputer.com/

--
mail1dotstofanetdotdk
 
 
 

GUI for AND,OR, NOT?

Post by Bjorn Rees » Thu, 29 Apr 2004 04:03:33


Well, "algorithm" can be a difficult word. I once went to a show
where several stand-up comedians played a story based on words
from the audience. When I said "algorithm" they all came to a
complete stop. After they indicated that they might like another
word, I suggested "green algorithms", which fared no better.
Finally, somebody else took pity on them and suggested a more
common word.

--
mail1dotstofanetdotdk
 
 
 

GUI for AND,OR, NOT?

Post by Jenny Brie » Thu, 29 Apr 2004 06:42:12

On 26 Apr 2004 15:54:31 -0400, XXXX@XXXXX.COM (Bradley K. Sherman)



Because of the ambiguity - do you mean

( toast AND jam ) OR ( hash browns )

or toast AND ( jam OR hash browns ) ?

That looks easy to resolve on a grid with ANDs on the X axis and ORs
on the Y axis, using the rules I described before.

Read this in monospaced type again - I'm using '|' to show the limits
of cells on the same row.

First alternative:

| toast | jam |
| | hash browns |

Second alternative:

| toast || jam |
| || hash browns |

Another nice advantage: since each search term is dropped into its own
box you don't have to quote a phrase like "hash browns". It turns out
you don't need any syntax at all apart from the keywords themselves.

Assuming that "toast and fried or boiled eggs" is the same as "toast
and eggs", I would interpret your three statements as:

| toast || jam |
| || fried eggs |
| || boiled eggs |
| || |
| hash browns || |
| pancakes || |

but I may be wrong. As I said, the original statements are ambiguous.

The equivalent boolean is not, but it's harder to decipher:

( toast AND ( jam OR fried eggs OR boiled eggs ) ) OR hash browns OR
pancakes

Using two dimensions makes things much clearer.
 
 
 

GUI for AND,OR, NOT?

Post by bks » Thu, 29 Apr 2004 13:15:36

In article < XXXX@XXXXX.COM >,



Precisely. If you can't be sure, it's going to be hard to write
a computer program that is.

--bks