private static SemanticaList CriaListaDefault(GPSolutionDefinition sh)
        {
            string listName = "default";

            sh.CreateListByName(listName, config.minLevels, config.maxLevels);
            GPSemantica       semanticaF1 = new GPSemanticaFormula("f1", 2, 3);
            GPSemantica       semanticaF2 = new GPSemanticaFormula("f2", 2, 2);
            GPSemantica       semanticaF3 = new GPSemanticaFormula("f3", 2, 3);
            GPSemantica       semanticaF4 = new GPSemanticaFormula("f4", 1, 1);
            GPSemantica       semanticaF5 = new GPSemanticaFormula("f5", 0, 0);
            GPSemanticaNumber semanticaN1 = new GPSemanticaNumber("0 a 100", 0, 100);

            sh.AddSemanticaToList(listName, semanticaF1);
            sh.AddSemanticaToList(listName, semanticaF2);
            sh.AddSemanticaToList(listName, semanticaF3);
            sh.AddSemanticaToList(listName, semanticaF5);
            sh.AddSemanticaToList(listName, semanticaN1);


            SemanticaList lista = sh.GetListByName(listName);

            lista.minLevels = config.minLevels;
            lista.maxLevels = config.maxLevels;
            Assert.IsTrue(lista.Contains(semanticaF1));
            Assert.IsTrue(lista.Contains(semanticaF2));
            Assert.IsTrue(lista.Contains(semanticaF3));
            Assert.IsFalse(lista.Contains(semanticaF4));
            sh.AddSemanticaToList(listName, semanticaF4);
            Assert.IsTrue(lista.Contains(semanticaF4));
            return(lista);
        }
        private SemanticaList CriaListaNumerica(GPSolutionDefinition holder)
        {
            string               listName    = "numericList";
            GPSemanticaNumber    semanticaN1 = new GPSemanticaNumber("0 a 100", 0, 100);
            GPSolutionDefinition sh          = new GPSolutionDefinition(config);

            sh.CreateListByName(listName, 0, 0);
            sh.AddSemanticaToList(listName, semanticaN1);

            SemanticaList lista = sh.GetListByName(listName);

            Assert.IsTrue(lista.Contains(semanticaN1));
            return(lista);
        }
        private GPSolutionDefinition CreateSampleDefinition(string listName)
        {
            GPSolutionDefinition definition = new GPSolutionDefinition(config);

            definition.CreateListByName(listName, config.minLevels, config.maxLevels);
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.BOOL_AND));
            SemanticaList listSemantic = definition.GetListByName(listName);

            Assert.IsNotNull(listSemantic);
            Assert.IsTrue(listSemantic.Contains(definition.GetSemantica(GPConsts.BOOL_AND)));
            //Assert.IsFalse(listSemantic.Contains(definition.GetSemantica(GPConsts.BOOL_NOT)));

            // definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.BOOL_NOT));
            //Assert.IsTrue(listSemantic.Contains(definition.GetSemantica(GPConsts.BOOL_NOT)));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.BOOL_OR));

            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.COMP_DIF));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.COMP_EQUAL));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.COMP_GREATER));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.COMP_GREATER_EQ));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.COMP_LOWER));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.COMP_LOWER_EQ));

            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.OPER_ADD));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.OPER_DIVIDE));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.OPER_MULTIPLY));
            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.OPER_SUBTRACT));

            definition.AddSemanticaToList(listName, definition.GetSemantica(GPConsts.NUMBER_DEFAULT));


            return(definition);
        }