コード例 #1
0
 public static DisjunctiveExamplesSpecification WitnessRight(LetRule rule, int parameter,
                                                             DisjunctiveExamplesSpecification spec) {
     var examples = new Dictionary<State, IEnumerable<object>>();
     foreach (State input in spec.ProvidedInputs) {
         var rightPositions = new List<object>();
         foreach (Tuple<uint?, uint?> example in spec.DisjunctiveExamples[input]) {
             rightPositions.Add(example.Item2);
         }
         examples[input] = rightPositions;
     }
     return DisjunctiveExamplesSpecification.From(examples);
 }
コード例 #2
0
        public static DisjunctiveExamplesSpecification WitnessLeft(LetRule rule, int parameter,
                                                                   DisjunctiveExamplesSpecification spec)
        {
            var examples = new Dictionary <State, IEnumerable <object> >();

            foreach (State input in spec.ProvidedInputs)
            {
                var leftPositions = new List <object>();
                foreach (Tuple <uint?, uint?> example in spec.DisjunctiveExamples[input])
                {
                    leftPositions.Add(example.Item1);
                }
                examples[input] = leftPositions;
            }
            return(DisjunctiveExamplesSpecification.From(examples));
        }