Je pense au problème suivant: je veux trouver une expression régulière qui correspond à un ensemble particulier de chaînes (par exemple, des adresses électroniques valides) et ne correspond à aucune autre (adresses électroniques non valides).
Supposons que par expression régulière, nous entendons une machine à états finis bien définie. Je ne connais pas la terminologie exacte, mais convenons d'une classe d'expressions autorisées.
Au lieu de créer manuellement l'expression, je veux lui donner un ensemble d'exemples positifs et négatifs.
Il devrait ensuite trouver une expression qui corresponde aux +, rejette les - et est minimale dans un sens bien défini (nombre d'états dans les automates?).
Mes questions sont:
- A-t-on envisagé ce problème, comment peut-il être défini de manière plus concrète et résolu efficacement? Peut-on le résoudre en temps polynomial? Est-ce que NP est complet, pouvons-nous l'approcher d'une manière ou d'une autre? Pour quelles classes d'expressions cela fonctionnerait-il? J'apprécierais tout pointeur sur des manuels, des articles ou autres qui traitent de ce sujet.
- Cela at-il un lien quelconque avec la complexité de Kolmogorov?
- Est-ce que cela a un rapport avec l'apprentissage? Si l'expression régulière est conforme à mes exemples, en raison de son caractère minimal, pouvons-nous dire quelque chose à propos de son pouvoir de généralisation sur des exemples encore invisibles? Quel critère de minimalité conviendrait mieux à cela? Lequel serait le plus efficace? Cela at-il des liens avec l’apprentissage automatique? Encore une fois, tous les indicateurs seraient utiles ...
Désolé pour la question confuse ... Pointez-moi dans la bonne direction pour comprendre cela. Merci !