Have you ever used the Implies function? It's on the Boolean palette:

<img src=" http://www.yqcomputer.com/ ">

Every once in a while I'm writing conditional code that needs to execute as follows: If X is True and Y is False, do something. For all other cases, do something else. When I'm writing this kind of code, I always reach for Implies. When I see it on my diagram, it's always immediately clear to me what's going on...which is good, since Boolean logic was never my strong suit.

-D P.S. - Check out past nuggets <a href=" http://www.yqcomputer.com/ ;message.id=1669" target="_blank"> here</a>. Message Edited by Darren on 07-10-2006 11:54 AM

Implies.jpg:

http://www.yqcomputer.com/

In formal notation, we often use the arrow for an if, then statement. This is the exact same thing except in boolean form.

if X, then Y

translates to

~X v Y (not X or Y)

or, X =>Y

or X implies Y

Drawing the truth table shows this:

X | Y | Result

----------------

1 | 1 | 1

1 | 0 | 0

0 | 1 | 1

0 | 0 | 1

Or in other words, X is a sufficient condition for Y (but not necessary).

I onced wondered, does labview have the the double arrow (IFF)? X<=>Y?

which means IFF X then Y

or

X is a necessary condition for Y.

Then I realized: Heh, stupid question, as the boolean function is simply just X. by itself :)

if X, then Y

translates to

~X v Y (not X or Y)

or, X =>Y

or X implies Y

Drawing the truth table shows this:

X | Y | Result

----------------

1 | 1 | 1

1 | 0 | 0

0 | 1 | 1

0 | 0 | 1

Or in other words, X is a sufficient condition for Y (but not necessary).

I onced wondered, does labview have the the double arrow (IFF)? X<=>Y?

which means IFF X then Y

or

X is a necessary condition for Y.

Then I realized: Heh, stupid question, as the boolean function is simply just X. by itself :)

Yes, implies is proably a bit underused, but I have used it in the past, (e.g. "current boolean to X, previous state from shift register to y" senses a False->True transition but not a True-> False transition).

As tst mentioned, the functionality can be easily duplicated by a compound node, which might look a bit more familiar to some of us. :D

<img src=" http://www.yqcomputer.com/ ">

Message Edited by altenbach on 07-10-2006 10:58 AM

implies.png:

http://www.yqcomputer.com/

As tst mentioned, the functionality can be easily duplicated by a compound node, which might look a bit more familiar to some of us. :D

<img src=" http://www.yqcomputer.com/ ">

Message Edited by altenbach on 07-10-2006 10:58 AM

implies.png:

http://www.yqcomputer.com/

Yup, but when I see Implies on the diagram, it's immediately clear to me that "oh, here's a situation where I'm looking for a specific T/F combination of these two Booleans." That's not as clear to me if I see a Compound Arithmetic set to Or with one of the inputs negated. :)

Of course, I'm no computer scientist...perhaps the latter is more understandable by those hooligans. ;)

-D

Of course, I'm no computer scientist...perhaps the latter is more understandable by those hooligans. ;)

-D

.., but I've known quite a number of people who just can't seem to grok it.

I have to admit that every time I used "implies" so far, I had to do a double-take on the context help to make sure I don't mix up the x and y inputs, since they are not interchangeable. :o

(Of course we can just blindly hook it up, then use the switcheroo trick from an earlier nugget to swap away until the results are as expected ;)).

Using the compound node, you can have the inverted input on the top or bottom, and it is always clear what's what. :DMessage Edited by altenbach on 07-11-2006 08:56 AM

It?s also important to note that in the above description

(Darren?s at the very top) when you want the code to ?do something? when you

have X but not Y you?ll need to do that ?something? in the FALSE case of a case

structure and not the TRUE case of that structure if you wire it directly (this

could be a small point of confusion)?.

To comment on the IFF operator, the <a href=" http://www.yqcomputer.com/ %7Eramsey/Logic/Iff.html" target="_blank">truth table</a> depends on

both X and Y, so the function for x <=> y is not equivalent to

x. As far as why it?s not implemented in

LabVIEW, I suppose its just not used all that often ;).

As much ?fun? as logic class was in college, I wouldn?t exactly

say I use it all the time (ask me what Demorgan?s theorem is for example and

watch me scratch my head in forgetfulness).

Have a great week everybody,

(Darren?s at the very top) when you want the code to ?do something? when you

have X but not Y you?ll need to do that ?something? in the FALSE case of a case

structure and not the TRUE case of that structure if you wire it directly (this

could be a small point of confusion)?.

To comment on the IFF operator, the <a href=" http://www.yqcomputer.com/ %7Eramsey/Logic/Iff.html" target="_blank">truth table</a> depends on

both X and Y, so the function for x <=> y is not equivalent to

x. As far as why it?s not implemented in

LabVIEW, I suppose its just not used all that often ;).

As much ?fun? as logic class was in college, I wouldn?t exactly

say I use it all the time (ask me what Demorgan?s theorem is for example and

watch me scratch my head in forgetfulness).

Have a great week everybody,

ask me what Demorgan?s theorem is for example and watch me scratch my head in forgetfulness).

OK, what is Demorgan's theorem?

To comment on the IFF operator, the <a href=" http://www.yqcomputer.com/ %7Eramsey/Logic/Iff.html" target="_blank">truth table</a> depends on both X and Y, so the function for x <=> y is not equivalent to x. As far as why it?s not implemented in LabVIEW, I suppose its just not used all that often ;).

Yeah, I made that mistake. Isn't it just an nxor (exclusive-or negated)? So I guess it is implemented in LV under "not exclusive or".

1. Darren's Weekly Nugget 07/03/2006

2. Darren's Weekly Nugget 07/31/2006

3. Darren's Weekly Nugget 07/24/2006

4. Darren's Weekly Nugget 04/10/2006

5. Darren's Weekly Nugget 10/09/2006

6. Darren's Weekly Nugget 10/16/2006

7. Darren's Weekly Nugget 10/30/2006

8. Darren's Weekly Nugget 10/02/2006

9. Darren's Weekly Nugget 10/23/2006

10. Darren's Weekly Nugget 1/16/2006 (Ctrl-click an icon to open diagram)

11. Darren's Weekly Nugget 11/06/2006

12. Darren's Weekly Nugget 05/22/2006

13. Darren's Weekly Nugget 08/08/2006

14. Darren's Weekly Nugget 09/05/2006

15. Darren's Weekly Nugget 06/12/2006

8 post • Page:**1** of **1**