Because DAX does not have any true recursive capabilities or the ability to recall previous values of a calculation, we must essentially build up each recursive step within its own table and store calculated values within variables.
We start by simply noting the current Fibonacci number being calculated and storing this value in the __Value variable. Next, we calculate the first two values of the Fibonacci sequence in the table variables, __Table0 and __Table1. The calculations for __Table0 and __Table1 are essentially the same. For each, we add the Fib column and simply specify the values as 0 and 1 respectively.
The rest of the table variables, __Table2, __Table3, __Table4, __Table5, and __Table6, all follow the same pattern. For each of these variables, the Fib column uses SUMX to sum the Fib column across the UNION of the two previous steps.