D→
Caution: Many function definitions are implicit, sometimes secretly so. E.g. defining
f(x):=∑∞n=0(−1)3nn!zn
is defining
f(x):=limm→∞∑mn=0(−1)3nn!zn
and a Limit definition is always a Task to find said limit.
Caution: In the function definition, the domain of the function, as well as variables in context, are stated quite broadly - it must be checked if the to-be-function would return a value for any given input.
In that sense, “Functions” really is “Partial functions”, a priori, although I try to state good valid domains on AoC.
Is there any reason to generalize → to ∏ here? I.e. going from A→B (function type) to ∏a:AB(a) (dependent product type).