Determine all polynomial $P(x)\in \mathbb{R}[x]$ satisfying the following two conditions:
(a) $P(2017)=2016$ and
(b) $(P(x)+1)^2=P(x^2+1)$ for all real number $x$.
1. We start with the given conditions:
   \[
   P(2017) = 2016
   \]
   and
   \[
   (P(x) + 1)^2 = P(x^2 + 1) \quad \text{for all real numbers } x.
   \]

2. Let's assume \( P(x) = x - 1 \). We need to verify if this polynomial satisfies both conditions.

3. First, check the condition \( P(2017) = 2016 \):
   \[
   P(2017) = 2017 - 1 = 2016.
   \]
   This condition is satisfied.

4. Next, check the condition \( (P(x) + 1)^2 = P(x^2 + 1) \):
   \[
   P(x) = x - 1 \implies P(x) + 1 = x - 1 + 1 = x.
   \]
   Therefore,
   \[
   (P(x) + 1)^2 = x^2.
   \]
   On the other hand,
   \[
   P(x^2 + 1) = (x^2 + 1) - 1 = x^2.
   \]
   Since both sides are equal, the second condition is also satisfied.

5. Now, we need to show that \( P(x) = x - 1 \) is the only polynomial that satisfies both conditions. Assume \( P(x) \) is a polynomial of degree \( n \). From the functional equation:
   \[
   (P(x) + 1)^2 = P(x^2 + 1),
   \]
   the degree of the left-hand side is \( 2n \), and the degree of the right-hand side is \( n \). Therefore, \( 2n = n \), which implies \( n = 0 \). This means \( P(x) \) is a constant polynomial.

6. However, since \( P(2017) = 2016 \), the constant polynomial must be \( P(x) = 2016 \). But this does not satisfy the functional equation \( (P(x) + 1)^2 = P(x^2 + 1) \).

7. Therefore, the only polynomial that satisfies both conditions is \( P(x) = x - 1 \).

The final answer is \( \boxed{P(x) = x - 1} \).