# BehaVerify: Verifying Temporal Logic Specifications for Behavior Trees

arXiv: https://arxiv.org/abs/2208.05360 · HTML: https://mlsanity.com/paper/2208.05360/

## Key facts

- Cited by 1 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 10 Aug 2022.

## Built on by (most cited first, 1 of 1)

- [Execution Semantics of Behavior Trees in Robotic Applications](https://mlsanity.com/paper/2408.00090/) (2024)

## Abstract (arXiv)

Behavior Trees, which originated in video games as a method for controlling NPCs but have since gained traction within the robotics community, are a framework for describing the execution of a task. BehaVerify is a tool that creates a nuXmv model from a py_tree. For composite nodes, which are standardized, this process is automatic and requires no additional user input. A wide variety of leaf nodes are automatically supported and require no additional user input, but customized leaf nodes will require additional user input to be correctly modeled. BehaVerify can provide a template to make this easier. BehaVerify is able to create a nuXmv model with over 100 nodes and nuXmv was able to verify various non-trivial LTL properties on this model, both directly and via counterexample. The model in question features parallel nodes, selector, and sequence nodes. A comparison with models based on BTCompiler indicates that the models created by BehaVerify perform better.
