If A[i]>j: then T[i,j] is TRUE if and only if (T[i−1,j]) is TRUE. Indeed, A[i] cannot participate in any solution here, since the array X only has positive integers, so we piggy back on whether a sum of j can be obtained from the subarray up to X[1,…,i−1].
If A[i]=j: the return TRUE already, we have a solution comprising just of A[i] and it is our lucky day!
Otherwise: T[i,j] is TRUE if and only if (T[i−1,j−A[i]]∨T[i−1,j]) is TRUE. Here, we take the best of both worlds by speculating on whether A[i] contributes to the solution or not. If it does, we update the target to j−A[i] — and notice that this is a legitimate index to ping since j>A[i]. If it does not, then as in the first situation, we fall back entirely on A[1,…,i] to carry the burden of producing a solution. If netiher of these scenarios pan out, then observe that there is no solution at all.