# Question:Why doesn't `if` recognize three arguments and why does piecewise return these strange results?

## Question:Why doesn't `if` recognize three arguments and why does piecewise return these strange results?

Maple 2015

Here is a chunk of a more complex code

```# syntax 1

decisions := "accept", "reject":

T := 2:
# The true test is `if`(t > T, ...) where t comes from some computation.
# In order to focus on the issue I assumed t was equal to 1.
`if`(1 > T, decisions[1], decisions[2]);
"reject"
```

To get a more concise writing, I did the following

```# syntax 2

decisions := "accept", "reject":
T := 2:
`if`(1 > T, decisions);
```

and received this error

`Error, invalid input: `if` expects 3 arguments, but received 2`

Why doesn't `if` recognizes that decisions is a two parameters sequence?
Is there a way to force `if` to understand syntax 2 ?

I tried replacing `if` by piecewise: while getting no error I can't understand why I got si strange results:

```piecewise(1 > T, decisions);
piecewise(3 > T, decisions);
0
"accept", "reject"
```

What mechanism does piecewise use to return these values?