GrammarProducts-0.0.0.2: GrammarProducts.cabal
name: GrammarProducts
version: 0.0.0.2
author: Christian Hoener zu Siederdissen, 2013
copyright: Christian Hoener zu Siederdissen, Ivo L. Hofacker, Peter F. Stadler, 2013
homepage: http://www.tbi.univie.ac.at/~choener/
maintainer: choener@tbi.univie.ac.at
category: Formal Languages, Bioinformatics
license: GPL-3
license-file: LICENSE
build-type: Simple
stability: experimental
cabal-version: >= 1.6.0
synopsis:
Grammar products and higher-dimensional grammars
description:
An algebra of liner and context-free grammars.
.
This library provides the implementation of our theory of
algebraic operations over linear and context-free grammars.
Using algebraic operations, it is possible to construct complex
dynamic programming algorithms from simpler "atomic" grammars.
.
Our most important contribution is the definition of a product
of grammars which naturally leads to alignment-like algorithms
on multiple tapes.
.
An efficient implementation of the resulting grammars is
possible via the ADPfusion framework. The @FormalGrammars@
library provides the required "Template Haskell" machinary.
.
Alternatively, the resulting grammars can also be
pretty-printed in various ways (LaTeX, ANSI, Haskell module
with signature and grammar).
.
.
.
Formal background can be found in two papers:
@
Christian Höner zu Siederdissen, Ivo L. Hofacker, and Peter F. Stadler
.
Product Grammars for Alignment and Folding
.
submitted
@
.
and
.
@
Christian Höner zu Siederdissen, Ivo L. Hofacker, and Peter F. Stadler
.
How to Multiply Dynamic Programming Algorithms
.
Brazilian Symposium on Bioinformatics (BSB 2013)
.
Lecture Notes in Bioinformatics 8213, Springer, Heidelberg
@
Extra-Source-Files:
changelog
library
build-depends:
base >= 4 && < 5 ,
ADPfusion >= 0.2.0 ,
ansi-wl-pprint ,
bytestring ,
containers ,
data-default ,
FormalGrammars >= 0.0.0.1 ,
HaTeX ,
lens ,
newtype ,
parsers ,
PrimitiveArray >= 0.5.1.0 ,
semigroups ,
transformers ,
trifecta
exposed-modules:
FormalLanguage.GrammarProduct
FormalLanguage.GrammarProduct.Op.Add
FormalLanguage.GrammarProduct.Op.Chomsky
FormalLanguage.GrammarProduct.Op.Chomsky.Proof
FormalLanguage.GrammarProduct.Op.Common
FormalLanguage.GrammarProduct.Op.Greibach
FormalLanguage.GrammarProduct.Op.Greibach.Proof
FormalLanguage.GrammarProduct.Op.Linear
FormalLanguage.GrammarProduct.Op.Power
FormalLanguage.GrammarProduct.Op.Subtract
FormalLanguage.GrammarProduct.Parser
-- BioInf.GrammarProducts
-- BioInf.GrammarProducts.Grammar
-- BioInf.GrammarProducts.Haskell
-- BioInf.GrammarProducts.Helper
-- BioInf.GrammarProducts.LaTeX
-- BioInf.GrammarProducts.Tools
-- BioInf.GrammarProducts.TH
ghc-options:
-O2
-- With grammar products, we need a refined way of turning input source files
-- into LaTeX and Haskell modules.
executable GrammarProductPP
build-depends:
cmdargs == 0.10.*
main-is:
GramProd.hs
ghc-options:
-O2
source-repository head
type: git
location: git://github.com/choener/GrammarProducts