If you rob (state ): you get value[v] plus the sum of not robbing any child. dp[v][1] = value[v] + dp[left][0] + dp[right][0].
If you do not rob (state ): pick the best option for each child. dp[v][0] = max(dp[left][0], dp[left][1]) + max(dp[right][0], dp[right][1]).