haskelzinc-0.3.0.9: CP in Haskell through MiniZinc

LicenseBSD3
MaintainerKlara Marntirosian <klara.mar@cs.kuleuven.be>
Stabilityexperimental
Safe HaskellSafe
LanguageHaskell2010

Interfaces.MZBuiltIns

Contents

Description

This module uses definitions of Interfaces.MZAST to provide an easy interface to MiniZinc built-in calls. It might be missing built-in calls that have been added in recent releases of MiniZinc.

Synopsis

Documentation

opPrec :: Op -> Int Source #

Returns the precedence of certain defined operators. This function is used for reducing the parentheses when printing an expression.

MiniZinc built-in operators

Comparison operators

(!=.) :: Expr -> Expr -> Expr infix 4 Source #

!=

(>.) :: Expr -> Expr -> Expr infix 4 Source #

>

(>=.) :: Expr -> Expr -> Expr infix 4 Source #

>=

(=.=) :: Expr -> Expr -> Expr infix 4 Source #

=

(<.) :: Expr -> Expr -> Expr infix 4 Source #

<

(<=.) :: Expr -> Expr -> Expr infix 4 Source #

<=

Arithmetic operators

(*.) :: Expr -> Expr -> Expr infixl 8 Source #

*

(+.) :: Expr -> Expr -> Expr infixl 7 Source #

+ (the binary operator)

plus_ :: Expr -> Expr Source #

+ (the unary operator)

(-.) :: Expr -> Expr -> Expr infixl 7 Source #

- (the binary operator)

minus_ :: Expr -> Expr Source #

- (the unary operator)

(/.) :: Expr -> Expr -> Expr infixl 8 Source #

/

_div_ :: Expr -> Expr -> Expr infixl 8 Source #

div

_mod_ :: Expr -> Expr -> Expr infixl 8 Source #

mod

Logical operators

not_ :: Expr -> Expr Source #

not

(->.) :: Expr -> Expr -> Expr infixl 3 Source #

->

(/\.) :: Expr -> Expr -> Expr infixl 3 Source #

/\

(<-.) :: Expr -> Expr -> Expr infixl 3 Source #

<-

(<->.) :: Expr -> Expr -> Expr infixl 3 Source #

(\/.) :: Expr -> Expr -> Expr infixl 3 Source #

\/

_xor_ :: Expr -> Expr -> Expr infixl 3 Source #

xor

Set operators

(...) :: Expr -> Expr -> Expr infixl 6 Source #

..

_diff_ :: Expr -> Expr -> Expr infixl 6 Source #

diff

_in_ :: Expr -> Expr -> Expr infix 5 Source #

in

_intersect_ :: Expr -> Expr -> Expr infixl 8 Source #

intersect

_subset_ :: Expr -> Expr -> Expr infix 5 Source #

subset

_superset_ :: Expr -> Expr -> Expr infix 5 Source #

superset

_symdiff_ :: Expr -> Expr -> Expr infixl 6 Source #

symdiff

_union_ :: Expr -> Expr -> Expr infixl 6 Source #

union

Array operators

(++.) :: Expr -> Expr -> Expr infixl 8 Source #

++

MiniZinc built-in calls

All functions, predicates, tests and annotations are named after their MiniZinc name prefixed by mz_. Operators' representation follows a different convention.

Arithmetic calls

Exponential and logarithmic calls

Trigonometric calls

Logical calls

Set calls

Array calls

Array sorting calls

Coercion calls

String calls

Reflection calls

Assertions and debugging calls

Calls for Enums

Calls for Optionals

Random number generator calls

Special constraints

Language information

MiniZinc annotations

General annotations

Propagation strength annotations

Search annotations

Variable selection annotations

Value choice annotations

Exploration strategy annotations

call Source #

Arguments

:: Ident

The name of the called operation

-> [Expr]

A representation of the arguments

-> Expr 

Used to represent a call to a funtion, test or predicate.