Skip to content

A mini symbolic execution engine for simple JavaScript programs

Notifications You must be signed in to change notification settings

tkhang1999/mini-symex-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mini-symex-js

A mini symbolic execution engine written in JavaScript, to illustrate some basic ideas of symbolic execution for beginners.

This work is inspired by mini-mc and mini-symex.

How to run?

  1. Prerequisites

Make sure to have python3, python3-disutils, and make installed on your MacOS/Linux machine. Otherwise, the installation of z3javascript may fail.

  1. Install dependencies
$ cd mini-symex-js
$ npm install --loglevel verbose # this may take a while to complete
$ cd node_modules/z3javascript
$ npm run prepublish
  1. Run demo
$ cd mini-symex-js
$ npm run symbolic
$ npm run concolic

Note: For MacOS, replace libz3.so in package.json with libz3.dylib

About

A mini symbolic execution engine for simple JavaScript programs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published