Пример #1
0
        public List <List <string> > Reduccion(List <List <string> > listafinal, List <List <string> > listainit)
        {
            int cont = 0;

            foreach (List <string> elemento in listafinal)
            {
                if (listainit.Contains(elemento))
                {
                    cont++;
                }
                if (cont == listafinal.Count())
                {
                    return(null);
                }
            }

            foreach (List <string> e1 in listainit)
            {
                foreach (string e2 in e1)
                {
                    string elementoant = e2;
                    foreach (List <string> elemento1 in listainit)
                    {
                        foreach (string elemento2 in elemento1)
                        {
                            string negacionE = "-" + elementoant;
                            if (elemento1.Contains(negacionE) && elemento1.Contains(elementoant))
                            {
                                ListarReglas.Remove(listainit);
                                return(listafinal);
                            }
                        }
                    }
                }
            }

            foreach (List <string> e1 in listafinal)
            {
                foreach (string e2 in e1)
                {
                    string negacionE = "-" + e2;
                    foreach (List <string> elemento1 in listainit)
                    {
                        foreach (string elemento2 in elemento1)
                        {
                            if (elemento1.Contains(negacionE))
                            {
                                elemento1.Remove(negacionE);
                                e1.Remove(e2);
                                foreach (string valor in e1)
                                {
                                    elemento1.Add(valor);
                                }
                            }
                        }
                    }
                }
            }
            return(listainit);
        }
Пример #2
0
 public void Base_de_Conocimiento(List <List <string> > lista)
 {
     ListarReglas.Add(lista);
 }