A computer implemented method of determining multiple Markov boundaries of the response variable from an input dataset, said method comprising the following steps:
- (a) determining a single Markov boundary M of the response variable using a Markov boundary discovery method X;
- (b) applying a strategy Y to generate a subset of variables and temporarily withhold this subset from the original dataset;
- (c) running a Markov boundary discovery method X on the dataset originating from step (b) to determine a candidate Markov boundary Mnew;
- (d) using a criterion Z to verify that the candidate Markov boundary Mnew is indeed a Markov boundary in the original distribution in which no variables are withheld;
- (e) repeating steps (b)-(d) until no new Markov boundaries can be discovered in the original distribution;
- and
- (f) outputting M from step (a) and all Mnew that passed the verification criterion Z in step (d)
- wherein all steps are performed on a suitably programmed computer.