Learn R Programming

lfl (version 2.2.0)

lingexpr: Creator of functions representing linguistic expressions

Description

A linguistic expression represents vague human terms such as "very small", "extremely big" etc. Such notions are always reasoned within a given context. lingexpr returns a function that models a selected linguistic expression. Accordingly to the given context, atomic expression (such as "small", "big") and a linguistic hedge (such as very, extremely), the returned function transforms numeric values into degrees (from [0, 1] interval), at which the values correspond to the expression.

Usage

lingexpr(
  context,
  atomic = c("sm", "me", "bi", "lm", "um", "ze", "neg.sm", "neg.me", "neg.bi",
    "neg.lm", "neg.um"),
  hedge = c("ex", "si", "ve", "ty", "-", "ml", "ro", "qr", "vr"),
  negated = FALSE,
  hedgeParams = defaultHedgeParams
)

allowed.lingexpr

Value

Returns a function with a single argument, which has to be a numeric vector.

Format

An object of class matrix (inherits from array) with 9 rows and 11 columns.

Arguments

context

A context of linguistic expressions (see ctx3(), ctx5(), ctx3bilat() or ctx5bilat())

atomic

An atomic expression whose horizon we would like to obtain

hedge

The type of the required linguistic hedge ('-' for no hedging)

negated

Negate the expression? (For instance, "not very small".) Negation is done using the invol.neg() function.

hedgeParams

Parameters that determine the shape of the hedges

Author

Michal Burda

Details

Based on the context type, the following atomic expressions are allowed:

  • ctx3() (trichotomy): small, medium, big;

  • ctx5() (pentachotomy): small, lower medium, medium, upper medium, big;

  • ctx3bilat() (bilateral trichotomy): negative big, negative medium, negative small, zero, small, medium, big;

  • ctx5bilat() (bilateral pentachotomy): negative big, negative medium, negative small, zero, small, medium, big.

The values of the atomic parameter have the following meaning (in ascending order):

  • neg.bi: big negative (far from zero)

  • neg.um: upper medium negative (between medium negative and big negative)

  • neg.me: medium negative

  • neg.lm: lower medium negative (between medium negative and small negative)

  • neg.sm: small negative (close to zero)

  • ze: zero

  • sm: small

  • lm: lower medium

  • me: medium

  • um: upper medium

  • bi: big

hedge parameter has the following meaning:

  • ex: extremely,

  • si: significantly,

  • ve: very,

  • ty: typically,

  • -: empty hedge,

  • ml: more or less,

  • ro: roughly,

  • qr: quite roughly,

  • vr: very roughly.

Accordingly to the theory of linguistic expressions by Novak, not every hedge is applicable to each atomic expression. The combinations of allowed pairs can be found in allowed.lingexpr. Trying to create forbidden combination results in error.

See Also

horizon(), hedge(), fcut(), lcut(), ctx()

Examples

Run this code
    small <- lingexpr(ctx3(0, 0.5, 1), atomic='sm', hedge='-')
    small(0)   # 1
    small(0.8) # 0
    plot(small)

    verySmall <- lingexpr(ctx3(0, 0.5, 1), atomic='sm', hedge='ve')
    plot(verySmall)

Run the code above in your browser using DataLab