Practicable fud decomposition fud
Code commentary on the implementation of Tractable and Practicable Inducers/Python Implementation/Practicable fud decomposition fud
Sections
Practicable fud decomposition fud
Practicable fud decomposition fud
The Practicable fud decomposition fud function systemsDecompFudsNullablePracticable
is defined in module AlignmentPracticable
. The implementation expects the model variables in the given fud decomposition to be of type VarPair (VarPair (f, _), _)
, e.g. <<3,2>,166>
, which is the case for the practicable inducers in the Implementation. The resultant fud has an additional layer of derived nullable variables, e.g. <<3,n>,1>
, which have an additional value null
. If the nullable variables are in children fuds they also depend on a contingent variable, e.g. <<2,c>,1>>
, which, in turn, depends on a slice variable, e.g. <<2,s>,1>
, and possibly on a parent slice variable, e.g. <<1,s>,2>
. Both contingent variables and slice variables have values in
and out
. Note that the Integer
argument g
allows more than one nullable layer to be added to a fud decomposition.
systemsDecompFudsNullablePracticable :: System -> DecompFud -> Integer -> Maybe Fud
def systemsDecompFudsNullablePracticable(uu,df,g):
...
Note that the system for the resultant fud may be obtained from fudsSystemImplied
,
ff = systemsDecompFudsNullablePracticable(uu,df,1)
let uu1 = uunion(uu,fsys(ff))