implémenter une règle logique - C++ - Programmation
Marsh Posté le 01-05-2013 à 19:48:58
Tout d'abord Merci pour la rapidité de la réponse.
Ma question est :
Comment coder la règle de distributivité de l'opérateur not sur l'opérateur and ?
Mon contexte du travail est l'optimisation d'une requête SQL. Supposons qu'un utilisateur a donné une requête qui a dans sa clause where un prédicat de la forme
Citation : not (e1 and e2) |
. Je veux appliquer la règle de distributivité de l'opérateur not sur les opérateurs and et or en remplaçant ce prédicat avec un nouveau prédicat de la forme
Citation : not(e1) or not(e2) |
. En fait, je suis entrain de simplifier la requête de l'utilisateur
Rq: e1 et e2 sont des expression booléennes
Marsh Posté le 11-05-2013 à 17:42:08
Regarde du coté de Lex/Yacc ou Antlr pour parser ton input.
Apres Tu pourras t'attaquer à optimiser la structure de donnée en sortie.
Marsh Posté le 01-05-2013 à 18:46:03
Bonjour,
Comment on peut coder cette règle en C++ :
not (e1 and e2) -> not(e1) or not(e2)
e est une expression boolèene. En fait, pour moi e est un predicat d'une requete SQL
Merci d'avance.