Thur, 17th Sept 2015, 23:07 Re: EE306 Problem Set 2 #13

```

A student writes:

> Hi Dr. Patt, my name is ************ and I am one of your students in your
> Introduction to Computing class.
>
> I'm currently working on the last problem of the problem set and I had a
> quick question regarding the truth table for this problem. When you
> mentioned that it can't both be 7am and 9am at the same time, meaning C and
> D cannot both be 1, does that automatically make the output Z = 0? Or
> rather, for the sake of the assignment do we simply ignore the irrelevant
> time when computing for a specific output?
>
> Example:
>
> For the input combination A=1, B=0, C=1, D=1 (1011), this means that it is
> sunny outside, and it is both 7am and 9am which isn't logical. For this
> situation, is the output Z equal to 0 due to this implausibility or do we
> disregard D=1 and assume that 1011 is equivalent to saying that it is both
> sunny outside and 7am, equating to Z=1?
>
> Thank you very much for your time and consideration.
>
> <<name withheld to protect the student who wants to know what the output is>>

Excellent question and it comes up often in real situations, both in the
design of computers and in the design of special logic circuits to perform
special functions like this one where we wish to trigger the alarm clock.

The answer is it does not matter what the output is.  We actually have a name
for such a situation: it is called a "don't care" because we don't care
whether the truth table has a 1 or a 0 as the output for that input
combination.

Why?

If we have an output 0 for the input combination 1011 (in the student's
example) the alarm won't ring for that input combination.  If we have an
output 1 for the input combination 1011, then the alarm will ring if it is
sunny, and it is both 7am and 9am.  Why is this not a problem?  Because
the input combination will never occur -- i.e., it will never be both
7am and 9am at the same time.  Since the input combination will never
occur, the output will never be based on that input combination so we
are free to specify the output however we wish.

That is, we want the alarm to sound for a specified set of input combinations,
and we want to be sure the alarm does not sound for a specified set of input
combinations.  For input combinations which will never occur, it does not
matter how we specify for that simple reason: the input combination will never
occur and so we will never have an output resulting from that input combination.

It turns out that the freedom to specify it any way we wish will be useful
when you design logic circuits in EE316 where you will be interested in
designing the simplest logic circuit for a particular truth table.  But
that is a topic for EE316, and we have enough on our plate in EE306 so
I think I will let you wait on that one until EE316.

OK?

Good luck getting the problem set done on time.

Yale Patt

```