Intel Open Sources AI Bug Checker
Written by Kay Ewbank   
Monday, 01 November 2021

Intel has made its AI-powered bug checker open source. ControlFlag uses machine learning and works with any programming language with control structures.

The tool was developed by Intel Labs’ Machine Programming Research (MPR) team. The developers say it uses advanced self-supervised machine-learning techniques to detect coding anomalies.


It has now been made open source and the team says they are:

"excited to give developers the opportunity to develop on it and see what more can be done using this extremely valuable and innovative technology."

Intel has tested ControlFlag on production-level software and widely used open-source software systems, and last year identified a code anomaly in Client URL (cURL), a computer software project transferring data using various network protocols over one billion times a day. After reporting the anomaly to the cURL team, they agreed with ControlFlag’s findings and have subsequently patched their code.

ControlFlag's pattern anomaly detection system can be used for various problems such as typographical error detection or flagging a missing NULL check. The software has two main phases, a pattern mining phase that is followed by a secondary phase where the software scans for anomalous patterns.

controlflag design

The pattern mining phase is a training phase that mines typical patterns in the user-provided GitHub repositories and then builds a decision-tree from the mined patterns. The scanning phase then applies the mined patterns to flag anomalous expressions in the user-specified target repositories.

In a paper presented to the Proceedings of the 5th ACM SIGPLAN International Symposium on Machine Programming describing the software, Niranjan Hasabnis and Justin Gottschlich of Intel Labs say that to their knowledge, the software is the first-of-its-kind self-supervised idiosyncratic programming pattern detection system. They also say that while they only demonstrate ControlFlag for C/C++, they have designed it to be programming language agnostic. As such, it should be capable of learning idiosyncratic signatures of any type of control structure. 


More Information

Paper Explaining ControlFlag

ControlFlag On GitHub

Related Articles

Intel Developing Data Parallel C++

ntel Open Sources NLP Architect  

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.


The DevOps Master Class - Go Behind The Concept

This free course by John Savil, a true Master, is 12-hours of superb material on everything you have to know in order to incorporate devops into your workflow.

50th Anniversary of First Microprocessor

Today Intel is celebrating the 50th anniversary of its 4004 microprocessor, the first world's first "computer on a chip" which ushered in the new era of integrated electronics.

More News





or email your comment to: