IReEn: Iterative Reverse-Engineering of Black-Box Functions via Neural Program Synthesis

06/18/2020
by   Hossein Hajipour, et al.
0

In this work, we investigate the problem of revealing the functionality of a black-box agent. Notably, we are interested in the interpretable and formal description of the behavior of such an agent. Ideally, this description would take the form of a program written in a high-level language. This task is also known as reverse engineering and plays a pivotal role in software engineering, computer security, but also most recently in interpretability. In contrast to prior work, we do not rely on privileged information on the black box, but rather investigate the problem under a weaker assumption of having only access to inputs and outputs of the program. We approach this problem by iteratively refining a candidate set using a generative neural program synthesis approach until we arrive at a functionally equivalent program. We assess the performance of our approach on the Karel dataset. Our results show that the proposed approach outperforms the state-of-the-art on this challenge by finding a functional equivalent program in 78 had privileged information on the black-box.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/09/2020

Modeling Black-Box Components with Probabilistic Synthesis

This paper is concerned with synthesizing programs based on black-box or...
research
07/02/2020

Am I Building a White Box Agent or Interpreting a Black Box Agent?

The rule extraction literature contains the notion of a fidelity-accurac...
research
02/24/2022

Black-Box Algorithm Synthesis – Divide-and-Conquer and More

Algorithm synthesis is a newly emerging branch of program synthesis, tar...
research
05/20/2021

An Exact Poly-Time Membership-Queries Algorithm for Extraction a three-Layer ReLU Network

As machine learning increasingly becomes more prevalent in our everyday ...
research
05/27/2019

Towards Automated Boundary Value Testing with Program Derivatives and Search

A natural and often used strategy when testing software is to use input ...
research
08/11/2023

Scaling Up Toward Automated Black-box Reverse Engineering of Context-Free Grammars

Black-box context-free grammar inference is a hard problem as in many pr...
research
07/19/2022

Automated Black-Box Boundary Value Detection

The input domain of software systems can typically be divided into sub-d...

Please sign up or login with your details

Forgot password? Click here to reset