Que penser du fragment de code suivant ? Il contient peut-être un défaut sémantique. En l’occurrence, un usage atypique de la boucle for, avec incrémentation du compteur deux fois par cycle. C’est le genre d’élément que ControlFlag est censé signaler.
Voilà près d’un an qu’Intel a dévoilé* cet outil de détection d’anomalies. Il vient d’en officialiser le passage en open source (licence MIT).
Avec ControlFlag, on est sur de l’apprentissage non supervisé. L’idée est de repérer des motifs structurels récurrents dans les langages de haut niveau. Puis d’en faire – sur la base du projet Tree-sitter – des arbres de décision destinés à alimenter la détection d’anomalies.
L’outil n’est pas encore capable d’effectuer des corrections. Il fournit pour le moment des recommandations. Et pour cause : l’approche, rappelle Intel, ne peut être que probabiliste. Bien que non conventionnel, le fragment de code ci-dessus a tout à fait pu être écrit à dessein. Idem pour celui qui suit, et sur lequel on aurait tendance à pointer l’usage d’une variable binaire alors que Verilog exploite par défaut une base décimale.
C’est tout l’enjeu pour ControlFlag : savoir distinguer les véritables erreurs sémantiques de ce qui relève des « variations de style ». Au bout, il y a des usages allant de la détection de doublons à la transpilation (conversion entre langages). Le démonstrateur d’Intel se concentre quant à lui sur le repérage des potentielles fautes de frappe.
* ControlFlag s’inscrit, notamment, dans la lignée du projet MISIM (Machine-Inferred Code Similarity). Intel y a impliqué plusieurs de ses chercheurs.
Illustration principale © monsitj – Adobe Stock
6 PME françaises sur 10 victimes d'une attaque de ransomware disent avoir payé jusqu'à 40…
Le gouvernement de Justine Trudeau a décidé, comme son voisin américain, de bannir le géant…
Les cinq principaux dirigeants de Dell Technologies ont obtenu une rémunération totale combinée de 93…
Mark Zuckerberg et le groupe Meta ont trouvé un moyen de générer des revenus B2B…
Des pirates ont détourné le portail officiel de téléchargement du système d’exploitation Windows 11 pour…
Veeam dévoile la mise à niveau de son offre Backup & Replication (v12) et dévoile…