packages feed

unique-logic-0.2: unique-logic.cabal

Name:             unique-logic
Version:          0.2
License:          BSD3
License-File:     LICENSE
Author:           Henning Thielemann
Maintainer:       Henning Thielemann <haskell@henning-thielemann.de>
Homepage:         http://code.haskell.org/~thielema/unique-logic/
Category:         Logic programming
Synopsis:         Solve simple simultaneous equations
Description:
  Solve a number of equations simultaneously.
  This is not Computer Algebra,
  better think of a kind of type inference algorithm
  or logic programming with only one allowed solution.
  .
  Only one solution is computed.
  Simultaneous equations with multiple solutions are not allowed.
  However, variables may remain undefined.
  We do not even check for consistency,
  since with floating point numbers even simple rules may not be consistent.
  .
  The modules ordered with respect to abstraction level:
  .
  * "UniqueLogic.ST.System":
    Construct and solve sets of functional dependencies.
    Example: @assignment3 (+) a b c@ meaning dependency @a+b -> c@.
  .
  * "UniqueLogic.ST.Rule":
    Combine functional dependencies to rules
    that can apply in multiple directions.
    Example: @add a b c@ means relation @a+b = c@
    which resolves to dependencies @a+b -> c, c-a -> b, c-b -> a@.
  .
  * "UniqueLogic.ST.Expression":
    Allow to write rules using arithmetic operators.
    It creates temporary variables automatically.
    Example: @(a+b)*c =:= d@ resolves to @a+b = x, x*c = d@.
Tested-With:       GHC==7.4.2
Cabal-Version:     >=1.8
Build-Type:        Simple

Source-Repository this
  Tag:         0.2
  Type:        darcs
  Location:    http://code.haskell.org/~thielema/unique-logic/

Source-Repository head
  Type:        darcs
  Location:    http://code.haskell.org/~thielema/unique-logic/

Library
  Build-Depends:
    transformers >=0.2 && <0.4,
    utility-ht >=0.0.1 && <0.1,
    base >= 4 && <5
  GHC-Options:      -Wall
  Hs-Source-Dirs:   src

  Exposed-modules:
    UniqueLogic.ST.System
    UniqueLogic.ST.Rule
    UniqueLogic.ST.Expression

Test-Suite test-unique-logic
  Type:    exitcode-stdio-1.0
  Main-Is: src/UniqueLogic/ST/Test.hs
  GHC-Options: -Wall
  Build-Depends:
    QuickCheck >=2.4 && <2.6,
    unique-logic,
    non-empty >=0.0 && <0.1,
    transformers,
    utility-ht,
    base