@hackage dhscanner-kbgen1.0.0

knowledge base predicates for static code analysis

  • The knowledge base ( kb ) aims to be a data structure able to:

    • represent multiple facts about the source code repo

    • from various programming languages

    • each fact can be translated to a Prolog fact

    • facts can be combined to create predicates

    • predictaes can be combined to formulate security queries

  • Prolog facts describe relations between:

    • code locations

    • const strings

    • const integers

  • Prolog facts can be combined:

  • Prolog queries are easy to write:

    • you don't have to be a Prolog expert

    • copy-paste the basic facts to any LLM

    • explain in plain English your query's purpose

    • et voilà !