Formatters
==========
Predicates can be formatted either as json or Graphviz dot files.
Json
----
Outputting a predicate as a json structure makes it easy to use tools such as
`jq `_ to inspect the layout.
.. code-block:: python
    from predicate import to_json, ne_p
    predicate = ne_p(13)
    json = to_json(predicate)
    assert json == {"ne": {"v": 13}}
Dotty
-----
Predicates can also be rendered in a visual way, using `Graphviz `_
.. code-block:: python
    from predicate import ne_p, to_dot
    predicate = ne_p(13)
    dot = to_dot(predicate, "title")
    dot.render("/tmp/predicate.gv", view=True)
In sample above, we render a simple predicate.
LaTeX
-----
This formatter will output the predicate as a text string in `Latex https://www.latex-project.org/`_ format:
.. code-block:: python
    from predicate import to_latex, ne_p
    predicate = ne_p(13)
    latex = to_latex(predicate)
    assert latex == "x \\neq 2"