|
|
SE1 - SE2 - SE3 - SE4 - SE5 - SE6 - SE7 - SE8 - SE9 - SE10 |
The new concept of semiknown values is used to
represent uncertain knowledge. A semiknown value is one specific value
of any domain
- which is not known precisely and unambiguously
(in contrast to computer program
values) and
- which is not unknown
(in contrast to unassigned
variables).
FunLog++ is a programming language which includes
denotation
functions,
algebraic functions and evaluation functions
for semiknown values.
Try to use semiknown values with the following
examples
in FunLog++.
Remark: Semiknown values could be
implemented in almost any programming language. Especially object-oriented
languages with polymorphic function identification are suitable (e.g. like
JAVA). The reason to use FunLog++ was that this language allows to define
prefix-, infix-, and postfix-operators. Thus algebraic operations could
be extended to Semiknown Values comfortably.
Concept of semiknown values |
SE1 - SE2 - SE3 - SE4 - SE5 - SE6 - SE7 - SE8 - SE9 - SE10 |
Semiknown values of any domain are represented
as
- possibilistic data ( given
as subsets )
or
- probabilistic data ( given as stochastic
variables )
As the concept of probability density function in stochastic variables is valid for discrete as well as for continuous variables we write p(x) for both kinds of data. The distribution function Fd(x0) for discrete semiknown values is defined as:
Examples of semiknown values |
SE1 - SE2 - SE3 - SE4 - SE5 - SE6 - SE7 - SE8 - SE9 - SE10 |
On this Website there are examples of semiknown values which can be analyzed. In case of expressions with semiknown values the FunLog++ interpreter can be used to really calculate the expressions value.
Please try the following denotation functions with
Semiknown Values:
- Interval
Arithmetics
- Set
Calculus
- Interval
and Set Calculus
- Contextfree
Grammers
- Probabilities
- Normal
Distribution
Please try the algebraic functions with Semiknown
Values:
- Bayes
Theorem (qualitative symptoms)
- Bayes
Theorem (quantitative symptoms)
- Bayes
Theorem (intervals of symptoms)
- Statistical
Testing (t-Test)
Basic functions with semiknown values |
SE1 - SE2 - SE3 - SE4 - SE5 - SE6 - SE7 - SE8 - SE9 - SE10 |
Basic denotation functions with
FunLog++ Semiknown Values are the following denotation operators, which
are described by the following specification:
A -- B
::= ... A < X, X < B, X.
< A
::= ... X < A, X.
> A
::= ... A < X, X.
A \/ B
::= ... ( X = A ; X = B ), X.
A @ B ::= ... ( B = prob_density(X,A) ), X.
moments(A,B,C,D)
::=
( A = [Mean,Variance,Skewness,Kurtosis],
B = samplesize(X),
C = population(X),
D = interaction(X),
Z = prob_density(X,Y) ), X.
Basic algebraic functions are
used to unify, order, summarize, or relate two FunLog++ Semiknown Values.
Therefore we use the elementary operators =/2 (unification), </2 (ordring),
-/2 (subtraction), and //2 (division) as well as the transcendental functions
exp/1 and ln/1. These are given in a pseudo formal function definition:
A = B
::= ... A is unifyable with B.
A < B
::= ... A is less than B.
A - B
::= ... A minus B.
A / B
::= ... A divided by B.
exp(A)
::= ... exponential of A.
ln(A)
::= ... logarithm of A.
Basic evaluation functions are
used to exploit Semiknown Values. The evaluation function is given in words
as:
prob_density(A,B)
::=
... calculates the probability density
of any semiknown value A at position B.
Derived functions with semiknown values |
SE1 - SE2 - SE3 - SE4 - SE5 - SE6 - SE7 - SE8 - SE9 - SE10 |
Derived denotation functions are
used to generate a FunLog++ Semiknown Value. For denotations we use the
elementary denotation operators --/2,
</1,
>/1,
\//2,
@/2,
and moments/4. Furthermore there
are some derived denotation functions which are completely defined in terms
of the elementary functions just to enhance programming with Semiknown
Values. These are:
<= A
::= <A \/ A.
>= A
::= A \/ >A.
A =-- B
::= A \/ A--B.
A --= B
::= A--B \/ B.
A =-= B
::= A \/ A--B \/ B.
moments([M,V,S,K])
::= moments([M,V,S,K],_,_,_).
moments([M,V,S])
::= moments([M,V,S,3]).
moments([M,V])
::= moments([M,V,0,3]).
moments
::= moments([0,1,0,3]).
likelihood_ratio(A,B,C)
::=
prob_density(A,C) / prob_density(B,C).
FunLog++ - introduction - glossary - language - library - special - semiknown - dynamic |
|