7 changed files with 305 additions and 0 deletions
			
			
		- 
					20doc/Makefile
 - 
					0doc/source/code_doc.rst
 - 
					13doc/source/code_stormpy_core.rst
 - 
					167doc/source/conf.py
 - 
					40doc/source/getting_started.rst
 - 
					34doc/source/index.rst
 - 
					31doc/source/installation.rst
 
@ -0,0 +1,20 @@ | 
				
			|||
# Minimal makefile for Sphinx documentation
 | 
				
			|||
#
 | 
				
			|||
 | 
				
			|||
# You can set these variables from the command line.
 | 
				
			|||
SPHINXOPTS    = | 
				
			|||
SPHINXBUILD   = sphinx-build | 
				
			|||
SPHINXPROJ    = stormpy | 
				
			|||
SOURCEDIR     = source | 
				
			|||
BUILDDIR      = build | 
				
			|||
 | 
				
			|||
# Put it first so that "make" without argument is like "make help".
 | 
				
			|||
help: | 
				
			|||
	@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) | 
				
			|||
 | 
				
			|||
.PHONY: help Makefile | 
				
			|||
 | 
				
			|||
# Catch-all target: route all unknown targets to Sphinx using the new
 | 
				
			|||
# "make mode" option.  $(O) is meant as a shortcut for $(SPHINXOPTS).
 | 
				
			|||
%: Makefile | 
				
			|||
	@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) | 
				
			|||
@ -0,0 +1,13 @@ | 
				
			|||
Stormpy.core | 
				
			|||
************************** | 
				
			|||
 | 
				
			|||
.. automodule:: stormpy | 
				
			|||
 | 
				
			|||
 | 
				
			|||
useful #1 -- auto members | 
				
			|||
========================= | 
				
			|||
 | 
				
			|||
This is something I want to say that is not in the docstring. | 
				
			|||
 | 
				
			|||
.. automodule:: stormpy.core | 
				
			|||
   :members: | 
				
			|||
@ -0,0 +1,167 @@ | 
				
			|||
#!/usr/bin/env python3 | 
				
			|||
# -*- coding: utf-8 -*- | 
				
			|||
# | 
				
			|||
# stormpy documentation build configuration file, created by | 
				
			|||
# sphinx-quickstart on Mon Dec 12 16:20:40 2016. | 
				
			|||
# | 
				
			|||
# This file is execfile()d with the current directory set to its | 
				
			|||
# containing dir. | 
				
			|||
# | 
				
			|||
# Note that not all possible configuration values are present in this | 
				
			|||
# autogenerated file. | 
				
			|||
# | 
				
			|||
# All configuration values have a default; values that are commented out | 
				
			|||
# serve to show the default. | 
				
			|||
 | 
				
			|||
# If extensions (or modules to document with autodoc) are in another directory, | 
				
			|||
# add these directories to sys.path here. If the directory is relative to the | 
				
			|||
# documentation root, use os.path.abspath to make it absolute, like shown here. | 
				
			|||
# | 
				
			|||
# import os | 
				
			|||
# import sys | 
				
			|||
# sys.path.insert(0, os.path.abspath('.')) | 
				
			|||
 | 
				
			|||
import stormpy | 
				
			|||
import stormpy.logic | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# -- General configuration ------------------------------------------------ | 
				
			|||
 | 
				
			|||
# If your documentation needs a minimal Sphinx version, state it here. | 
				
			|||
# | 
				
			|||
# needs_sphinx = '1.0' | 
				
			|||
 | 
				
			|||
# Add any Sphinx extension module names here, as strings. They can be | 
				
			|||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom | 
				
			|||
# ones. | 
				
			|||
extensions = ['sphinx.ext.autodoc', | 
				
			|||
    'sphinx.ext.doctest', | 
				
			|||
    'sphinx.ext.intersphinx', | 
				
			|||
    'sphinx.ext.coverage', | 
				
			|||
    'sphinx.ext.githubpages'] | 
				
			|||
 | 
				
			|||
# Add any paths that contain templates here, relative to this directory. | 
				
			|||
templates_path = ['_templates'] | 
				
			|||
 | 
				
			|||
# The suffix(es) of source filenames. | 
				
			|||
# You can specify multiple suffix as a list of string: | 
				
			|||
# | 
				
			|||
# source_suffix = ['.rst', '.md'] | 
				
			|||
source_suffix = '.rst' | 
				
			|||
 | 
				
			|||
# The master toctree document. | 
				
			|||
master_doc = 'index' | 
				
			|||
 | 
				
			|||
# General information about the project. | 
				
			|||
project = 'stormpy' | 
				
			|||
copyright = '2016 Moves RWTH Aachen'  | 
				
			|||
author = 'Sebastian Junges, Matthias Volk' | 
				
			|||
 | 
				
			|||
# The version info for the project you're documenting, acts as replacement for | 
				
			|||
# |version| and |release|, also used in various other places throughout the | 
				
			|||
# built documents. | 
				
			|||
# | 
				
			|||
# The short X.Y version. | 
				
			|||
version = '' | 
				
			|||
# The full version, including alpha/beta/rc tags. | 
				
			|||
release = '' | 
				
			|||
 | 
				
			|||
# The language for content autogenerated by Sphinx. Refer to documentation | 
				
			|||
# for a list of supported languages. | 
				
			|||
# | 
				
			|||
# This is also used if you do content translation via gettext catalogs. | 
				
			|||
# Usually you set "language" from the command line for these cases. | 
				
			|||
language = None | 
				
			|||
 | 
				
			|||
# List of patterns, relative to source directory, that match files and | 
				
			|||
# directories to ignore when looking for source files. | 
				
			|||
# This patterns also effect to html_static_path and html_extra_path | 
				
			|||
exclude_patterns = [] | 
				
			|||
 | 
				
			|||
# The name of the Pygments (syntax highlighting) style to use. | 
				
			|||
pygments_style = 'sphinx' | 
				
			|||
 | 
				
			|||
# If true, `todo` and `todoList` produce output, else they produce nothing. | 
				
			|||
todo_include_todos = False | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# -- Options for HTML output ---------------------------------------------- | 
				
			|||
 | 
				
			|||
# The theme to use for HTML and HTML Help pages.  See the documentation for | 
				
			|||
# a list of builtin themes. | 
				
			|||
# | 
				
			|||
html_theme = 'bizstyle' | 
				
			|||
 | 
				
			|||
# Theme options are theme-specific and customize the look and feel of a theme | 
				
			|||
# further.  For a list of options available for each theme, see the | 
				
			|||
# documentation. | 
				
			|||
# | 
				
			|||
# html_theme_options = {} | 
				
			|||
 | 
				
			|||
# Add any paths that contain custom static files (such as style sheets) here, | 
				
			|||
# relative to this directory. They are copied after the builtin static files, | 
				
			|||
# so a file named "default.css" will overwrite the builtin "default.css". | 
				
			|||
html_static_path = ['_static'] | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# -- Options for HTMLHelp output ------------------------------------------ | 
				
			|||
 | 
				
			|||
# Output file base name for HTML help builder. | 
				
			|||
htmlhelp_basename = 'stormpydoc' | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# -- Options for LaTeX output --------------------------------------------- | 
				
			|||
 | 
				
			|||
latex_elements = { | 
				
			|||
    # The paper size ('letterpaper' or 'a4paper'). | 
				
			|||
    # | 
				
			|||
    # 'papersize': 'letterpaper', | 
				
			|||
 | 
				
			|||
    # The font size ('10pt', '11pt' or '12pt'). | 
				
			|||
    # | 
				
			|||
    # 'pointsize': '10pt', | 
				
			|||
 | 
				
			|||
    # Additional stuff for the LaTeX preamble. | 
				
			|||
    # | 
				
			|||
    # 'preamble': '', | 
				
			|||
 | 
				
			|||
    # Latex figure (float) alignment | 
				
			|||
    # | 
				
			|||
    # 'figure_align': 'htbp', | 
				
			|||
} | 
				
			|||
 | 
				
			|||
# Grouping the document tree into LaTeX files. List of tuples | 
				
			|||
# (source start file, target name, title, | 
				
			|||
#  author, documentclass [howto, manual, or own class]). | 
				
			|||
latex_documents = [ | 
				
			|||
    (master_doc, 'stormpy.tex', 'stormpy Documentation', | 
				
			|||
     'Sebastian Junges, Matthias Volk', 'manual'), | 
				
			|||
] | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# -- Options for manual page output --------------------------------------- | 
				
			|||
 | 
				
			|||
# One entry per manual page. List of tuples | 
				
			|||
# (source start file, name, description, authors, manual section). | 
				
			|||
man_pages = [ | 
				
			|||
    (master_doc, 'stormpy', 'stormpy Documentation', | 
				
			|||
     [author], 1) | 
				
			|||
] | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# -- Options for Texinfo output ------------------------------------------- | 
				
			|||
 | 
				
			|||
# Grouping the document tree into Texinfo files. List of tuples | 
				
			|||
# (source start file, target name, title, author, | 
				
			|||
#  dir menu entry, description, category) | 
				
			|||
texinfo_documents = [ | 
				
			|||
    (master_doc, 'stormpy', 'stormpy Documentation', | 
				
			|||
     author, 'stormpy', 'One line description of project.', | 
				
			|||
     'Miscellaneous'), | 
				
			|||
] | 
				
			|||
 | 
				
			|||
 | 
				
			|||
 | 
				
			|||
 | 
				
			|||
# Example configuration for intersphinx: refer to the Python standard library. | 
				
			|||
intersphinx_mapping = {'https://docs.python.org/': None} | 
				
			|||
@ -0,0 +1,40 @@ | 
				
			|||
**************************** | 
				
			|||
Getting Started | 
				
			|||
**************************** | 
				
			|||
 | 
				
			|||
 | 
				
			|||
High-level API | 
				
			|||
====================== | 
				
			|||
 | 
				
			|||
We start with a selection of high-level constructs in stormpy.  | 
				
			|||
 | 
				
			|||
In order to do this, we import stormpy:: | 
				
			|||
 | 
				
			|||
	import stormpy | 
				
			|||
	import stormpy.core | 
				
			|||
	 | 
				
			|||
	 | 
				
			|||
Building models  | 
				
			|||
----------------------- | 
				
			|||
	 | 
				
			|||
There are several ways to create a Markov chain.  | 
				
			|||
One of the easiest is to parse a description of such a Markov chain and to let storm build the chain.  | 
				
			|||
 | 
				
			|||
Here, we build a Markov chain from a prism program. | 
				
			|||
Stormpy comes with a small set of examples, which we use here:: | 
				
			|||
 | 
				
			|||
	import stormpy.examples | 
				
			|||
 | 
				
			|||
With this, we can now import the path of our prism file:: | 
				
			|||
 | 
				
			|||
	path = stormpy.examples.knuth_yao | 
				
			|||
	prism_program = stormpy.parse_prism_program(path) | 
				
			|||
	 | 
				
			|||
The `prism_program` can be translated into  | 
				
			|||
 | 
				
			|||
	 | 
				
			|||
 | 
				
			|||
	 | 
				
			|||
 | 
				
			|||
 | 
				
			|||
 | 
				
			|||
@ -0,0 +1,34 @@ | 
				
			|||
.. stormpy documentation master file, created by | 
				
			|||
   sphinx-quickstart on Mon Dec 12 16:20:40 2016. | 
				
			|||
   You can adapt this file completely to your liking, but it should at least | 
				
			|||
   contain the root `toctree` directive. | 
				
			|||
 | 
				
			|||
Stormpy is a set of python bindings for the probabilistic model checker `storm <https://moves-rwth.github.io/storm/>`_.  | 
				
			|||
 | 
				
			|||
 | 
				
			|||
Stormpy Documentation | 
				
			|||
=================================== | 
				
			|||
 | 
				
			|||
.. toctree:: | 
				
			|||
   :maxdepth: 2 | 
				
			|||
   :caption: Contents: | 
				
			|||
    | 
				
			|||
   installation | 
				
			|||
   getting_started | 
				
			|||
    | 
				
			|||
Stormpy API Reference | 
				
			|||
==================================== | 
				
			|||
.. toctree:: | 
				
			|||
   :maxdepth: 2 | 
				
			|||
   :caption: Modules: | 
				
			|||
	 | 
				
			|||
   code_stormpy_core | 
				
			|||
    | 
				
			|||
 | 
				
			|||
 | 
				
			|||
Indices and tables | 
				
			|||
================== | 
				
			|||
 | 
				
			|||
* :ref:`genindex` | 
				
			|||
* :ref:`modindex` | 
				
			|||
* :ref:`search` | 
				
			|||
@ -0,0 +1,31 @@ | 
				
			|||
Installation | 
				
			|||
*********************** | 
				
			|||
 | 
				
			|||
Before installing stormpy, make sure `storm <https://moves-rwth.github.io/storm/>`_ is installed. | 
				
			|||
 | 
				
			|||
Clone stormpy into any suitable location:: | 
				
			|||
 | 
				
			|||
	$ git clone https://srv-i2.informatik.rwth-aachen.de/scm/git/stormpy.git | 
				
			|||
	$ cd stormpy | 
				
			|||
	 | 
				
			|||
Here, build stormpy in develop mode using your favourite python distribution way of installing: e.g.:: | 
				
			|||
 | 
				
			|||
	$ python3 setup.py develop | 
				
			|||
	 | 
				
			|||
or:: | 
				
			|||
 | 
				
			|||
	$ pip install -ve . | 
				
			|||
	 | 
				
			|||
 | 
				
			|||
.. topic:: Specifying which storm library to use | 
				
			|||
 | 
				
			|||
	If you have multiple versions of storm or cmake is not able to find your storm version,  | 
				
			|||
	you can specify the `--storm-DIR YOUR-PATH-TO-STORM` flag in the build_ext step:: | 
				
			|||
	 | 
				
			|||
		$ python3 setup.py build_ext --storm-DIR YOUR-PATH-TO-STORM develop | 
				
			|||
		 | 
				
			|||
		 | 
				
			|||
After building, you can run the test files by:: | 
				
			|||
 | 
				
			|||
	py.test tests/  | 
				
			|||
	 | 
				
			|||
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue