Next Article in Journal
Asymptotically Normal Estimators for the Parameters of the Gamma-Exponential Distribution
Next Article in Special Issue
Mutated Specification-Based Test Data Generation with a Genetic Algorithm
Previous Article in Journal
Characterization of Probability Distributions via Functional Equations of Power-Mixture Type
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Fuzzy Automata as Coalgebras

1
Graduate School of Advanced Science and Engineering, Hiroshima University, Hiroshima 739-8511, Japan
2
School of Mathematical Sciences, Peking University, Beijing 100871, China
3
INL (International Iberian Nanotechnology Laboratory) & INESC TEC, Universidade do Minho, 4704-553 Braga, Portugal
*
Author to whom correspondence should be addressed.
Submission received: 17 December 2020 / Revised: 18 January 2021 / Accepted: 25 January 2021 / Published: 29 January 2021
(This article belongs to the Special Issue Mathematics in Software Reliability and Quality Assurance)

Abstract

:
The coalgebraic method is of great significance to research in process algebra, modal logic, object-oriented design and component-based software engineering. In recent years, fuzzy control has been widely used in many fields, such as handwriting recognition and the control of robots or air conditioners. It is then an interesting topic to analyze the behavior of fuzzy automata from a coalgebraic point of view. This paper models different types of fuzzy automata as coalgebras with a monad structure capturing fuzzy behavior. Based on the coalgebraic models, we can define a notion of fuzzy language and consider several versions of bisimulation for fuzzy automata. A group of combinators is defined to compose fuzzy automata of two branches: state transition and output function. A case study illustrates the coalgebraic models proposed and their composition.

1. Introduction

Control logic plays an important role in component-based programming in deciding a run-time mechanisms and rules of composition. Precise control needs meticulous implementation so that many applications may be expensive and inefficient. To tackle this problem, there is an increasing interest in using fuzzy logic in many new areas. As a very efficient method for handling imprecise properties, fuzzy logic then provides a systematic approach to incorporating approximate reasoning into such systems so that fuzzy implementations are not only cheaper and faster than precise ones, but also more understandable for users [1,2]. Therefore, some devices that profit from the use of vagueness in their overall operation have emerged and the related theory is described in [3]. For instance, the fuzzy principal component analysis method, based on the variance contribution rate of the principal component combined with the fuzzy theory to obtain a reasonable correction weight, is used to refine quantitative and qualitative index data of innovation service capability [4]. Moreover, this approach makes sense not only at the control level, but also at the test level [5].
Fuzzy control systems incorporate a number of components driven by fuzzy logic [6]. Most of them are rule-based systems that exchange information through interfaces. Technically, the modeling approach of fuzzy control systems contains three aspects: an input stage, a processing stage and an output stage, whose details are as follows.
  • The input stage transforms an input into a value. The method is to abstract the relation of an input and its corresponding vague value into a point in a coordinate system, where the horizontal axis stands for the input domain and the vertical axis stands for the vagueness domain.
  • The processing stage involves inference rules and generates a result for each input, and then combines the results of the rule. In this stage, logical inference rules are used to describe the connection between cause and effect. The rules are of the form
    If c o n d i t i o n then c o n c l u s i o n .
    Such rules provide information for the decision of control variables.
  • The output stage processes the combined results from the processing stage and converts them to a specific control value. For instance, common techniques for conversion process includes max-min inference, max-membership principle and mean-max membership.
Automata theory has a long history in modeling systems and applications which can be realized as a set of states and transitions between them depending on some inputs. Fuzzy finite-state automata (FFA) incorporate fuzziness into the internal state representation and output of these computational systems [7]. Depending on the non-fuzzy output labels associated with (final) states or transitions, there are different classes of FFA: FFA with final states, FFA without final states, Fuzzy Moore FA and Fuzzy Mealy FA [8]. There are also works considering fuzzy output maps, such as fuzzy Mealy machines and fuzzy Moore machines [9,10]. Fuzzy automata have been studied from different aspects. In order to study behavior control, a novel method to compute the membership values of the next states of a fuzzy automaton with an averaging function between the membership value of the input, and the membership value of the current state is proposed in [11]; the behaviors of lattice-valued nondeterministic fuzzy automata are compared through two language equivalence relations which have different discriminating power in [12]. Categories of deterministic fuzzy automata and fuzzy languages based on a complete residuated lattice with zero divisors are introduced in [13], a common framework for fuzzy type automata is developed in relationships with morphisms of monads in [14], and the concept of fuzzy regular language accepted by fuzzy finite automata is purposed in [15]. Describing systems that behave in the same way in the sense that one system simulates the other and vice versa, several notions of (approximate) bismulation relations are investigated in [16,17,18].
Along the past two decades, coalgebra has emerged as a well established general framework for the study of the behavior of various kinds of automata [19,20,21]. There is in particular a generalized determinization construction from automata to coalgebras, including partial Mealy machines, (structured) Moore automata, Rabin probabilistic automata, and pushdown automata [22]. A survey and hierarchy of probabilistic systems as coalgebras is discussed in [23]. It connects probabilistic verification with coalgebraic modeling and compares expressiveness of system types by natural transformations between functors. Hybrid automata specifying both discrete and continuous behavior can also be modeled as coalgebras [24]. A coalgebraic perspective supporting a generic theory of hybrid automata with a rich palette of definitions and results is studied in [25]. In addition, a coalgebraic semantics framework for quantum systems is developed in [26]. One obvious advantage of the coalgebraic view is that it induces a simple and intuitive notion of bisimulation between coalgebras, a notion originally stemming from the world of labeled transition systems and process algebra [27,28,29]. Witnessed by the notion of coalgebra homomorphism, bisimulation on coalgebras can be defined by commutative diagrams and shown to be formally dual to congruence on algebra [30,31]. Moreover, there is a general framework for the study of components as concrete coalgebras and the development of the corresponding calculi [32].
A recent thesis [33] proposes a coalgebraic approach to fuzzy automata, which obtains the following results: (a) a coalgebraic definition of the fuzzy language recognized by a fuzzy automaton, (b) the definition of a functor describing the determinization process of a fuzzy automata via a generalization of the powerset construction, (c) a coalgebraic definition of bisimulation on fuzzy automata allowing the construction of a quotient fuzzy automaton. However, it only considers the output as the current membership value for the current state. Moreover, a coalgebraic theory of fuzzy transition systems and their concrete fuzzy bisimulation is studied in [34]. The authors resort to relational lifting that is one of the most used methods in bisimulation research, leading to an algorithm for testing bisimulation in [35], and group-by-group fuzzy bisimulation and its corresponding modal logic in [36]. Nevertheless, the output stage is omitted. To consider different types of fuzzy automata, our main contributions are as follows:
  • Explore the fuzzy-set monad to serve as the basis to a coalgebraic approach;
  • Provide a coalgebraic framework for different types of fuzzy automata, where the notions of fuzzy language and bisimulation can be addressed;
  • Define appropriate combinators for composing fuzzy automata from two branches:state transition and output function.
Thus, we not only consider fuzzy language respecting the controlling behavior and bisimulation relations for fuzzy automata, but also study the composition mechanism in our coalgebraic framework.
This paper is structured as follows. Section 2 introduces different types of fuzzy automata. Section 3 recalls the definition of the fuzzy-set monad and studies its properties. Section 4 defines the coalgebraic models for fuzzy automata, the notion of fuzzy language and considers several versions of bisimulation. Section 5 develops a series of combinators for composing fuzzy automata. Section 6 discusses a case study. Section 7 concludes and raises some topics for future work.

2. Fuzzy Automata

In a complex controlled system driven by fuzzy logic, a fuzzy automaton is the basic unit which contains fuzzy processors and input/output interfaces. Considering fuzzy output maps, we focus on three types of fuzzy automata: Fuzzy Moore Automata (FMrA), Fuzzy Mealy Automata (FMlA) and Fuzzy Unified Automata (FUA). FMrA and FMlA are obtained by modifying the definitions of fuzzy Moore machine and fuzzy Mealy machine in [8]. Unlike the definition of fuzzy Mealy machine in [8] requiring two functions, one to describe the next state and the other to describe the output, a fuzzy Mealy machine is equipped with one fuzzy function to characterize completely the next state and the output produced in [9]. For distinction between them, we name the latter one as FUA. For simplicity, initial and final states are ignored for the moment.
Definition 1 (Fuzzy Moore Automata (FMrA)).
A fuzzy Moore automaton is a 5-tuple p = ( X , I , O , α , e ) where
  • X is a set of states.
  • I is a set of input symbols.
  • O is a set of output symbols.
  • α : X × I [ 0 , 1 ] X is a fuzzy transition function.
  • e : X [ 0 , 1 ] O is a fuzzy output function.
Note that each non-fuzzy output map e : X O corresponds to a function e : X [ 0 , 1 ] O such that e ( x ) = δ e ( x ) , where δ k ( t ) = δ ( t k ) and δ is the Dirac function.
Definition 2 (Fuzzy Mealy Automata (FMlA)).
A fuzzy Mealy automaton is a 5-tuple p = ( X , I , O , α , e ) where
  • X , I , O , α : X × I [ 0 , 1 ] X are defined as in FMrA.
  • e : X × I [ 0 , 1 ] O is a fuzzy input-output function.
Note that each non-fuzzy output map e : X × I O corresponds to a fuzzy input-output function e : X × I [ 0 , 1 ] O where e ( x , i ) = δ e ( x , i ) .
Given an FMrA ( X , I , O , α , e ) , it is easy to construct an FMlA ( X , I , O , α , e ) where e ( x , i ) = e ( x ) without loss of information, so we regard it as a subcase of FMlA and concentrate on the study of FMlA as coalgebras.
Definition 3 (Fuzzy Unified Automata (FUA)).
A fuzzy unified automaton is a 4-tuple p = ( X , I , O , β ) where
  • X , I , O are defined as in FMrA.
  • β : X × I [ 0 , 1 ] X × O is a fuzzy input-transition-output function.
In classical methods, two operations F 1 : [ 0 , 1 ] × [ 0 , 1 ] [ 0 , 1 ] and F 2 : [ 0 , 1 ] [ 0 , 1 ] should be defined to to define the language accepted by an automaton [7]. Instead, we intend to define the notion of fuzzy language with the aid of the fuzzy-set monad.

3. Fuzzy-Set Monad

3.1. Fuzzy Set

The fuzzy set theory [37] was developed by Lotfi A. Zadeh in 1965. The main purpose of using fuzzy sets is to deal with vague data under some given properties. For example, consider a finite set of real numbers S R and the property “close to 0”. This property seems ambiguous because there is not an explicit criterion to judge whether objects are closed to 0. We want to ask within what distance we can say “one real number is close to 0”. To make it precise, the one should figure out a function which fits the property. For example,
ψ S ( x ) = m a x { 0 , 1 1 m | x | } , x [ m , m ]
where m = m a x s S | s | . This function is called the membership function and indicates that the closer the data s S is to 0, the closer the membership value ψ S ( s ) is to 0. Obviouly, data from which the distance to 0 are equal have the same membership value, i.e., ψ S ( s ) = ψ S ( s ) . However, the selection of membership function is not unique and usually depends on the goal of application.
Definition 4
(Residuated Lattice [33]). A residuated lattice is an algebra K = ( K , , , , , 0 , 1 ) with four binary and two nullary operations satisfying:
1 
( K , , , 0 , 1 ) is a lattice with the partial order ≤ which is defined by “ x y if and only if x y = y ”. The greatest (least) element is 1(0) that for all x K , x 1 ( x 0 );
2 
( K , , 1 ) is a commutative monoid with the unit element 1;
3 
For x , y , z K , x y z if and only if x y z .
Especially, if ( K , , , 0 , 1 ) is a complete lattice, then K is called a complete residuated lattice.
Residuated lattices are the algebraic structure that characterizes fuzzy components.
Example 1.
The Boolean algebra ( 2 , , , ¬ ) is a residuated lattice ( 2 , , , , , 0 , 1 ) . In this expression, 2 = { 0 , 1 } is the set of elements. , correspond to ∧ and ∨ operations in Boolean algebra, respectively. Multiplication is defined as ∧. The residuate operation comes as x y : = ¬ x y .
Definition 5
(Fuzzy Subset [33]). Given a set X, a fuzzy subset over K of X is a function ϕ : X K that assigns to each object x X a membership value. The set of all fuzzy subsets of X is denoted by Z K ( X ) and obviously Z K ( X ) = K X . In the sequel, we use the shorthand notation Z ( X ) to represent Z K ( X ) .
Note that Z can be interpreted as an endofunctor on Set where
Z ( f ) : K X K Y κ λ y . x f 1 ( y ) κ ( x )
for any f : X Y . Note that
x X κ ( x ) = { κ ( x ) | x X } .

3.2. Properties of Fuzzy-Set Monad

The fuzzy-set monad on Set is defined in [33]. In this section, we will firstly recall the definition and then prove this monad is strong and commutative. Although every monad in Set is strong, we include the explicit contribution to build up intuitions.
Definition 6
(The fuzzy-set Monad [33]). Fuzzy-set monad Z = ( Z , η , μ ) over K = ( K , , , , , 0 , 1 ) satisfies for a set X
  • η : I d Z satisfies that
    η X ( x ) ( y ) = 1 x = y 0 o t h e r w i s e , x , y X ,
  • μ : Z 2 Z satisfies that
    μ X ( Φ ) = ψ Z ( X ) Φ ( ψ ) ψ , Φ Z 2 ( X ) .
    where
    ( i I ϕ i ) ( x ) = i I ϕ i ( x ) x X , ϕ i Z ( X )
    and
    ( a ϕ ) ( x ) = a ϕ ( x ) a K , x X , ϕ Z ( X )
Definition 7
(Strong monad [21]). A strong monad is a monad T = ( T , η , μ ) equipped with a left tensorial strength σ X , Y : T ( X ) × Y T ( X × Y ) that commutes with the unit and multiplication of the monad:
Mathematics 09 00272 i001
Theorem 1.
The triple Z = ( Z , η , μ ) is a strong monad.
Proof. 
Firstly, define a left tensorial strength with components σ X , Y : Z ( X ) × Y Z ( X × Y ) as
σ X , Y ( ψ , y ) = λ x , λ y . ( ψ ( x ) η Y ( y ) ( y ) )
that commute appropriately with trivial projection and associativity isomorphisms for f : X Z and g : Y W :
Mathematics 09 00272 i002 Mathematics 09 00272 i003
For the unit,
σ X , Y · ( η X × id ) ( x , y ) = { Definition of × } σ X , Y ( η X ( x ) , y ) = { Definition of σ } · ( η X ( x ) × η Y ( y ) ) = { Definition of η } η X × Y ( x , y ) .
For the multiplication, we have to show that μ X × Y · Z ( σ X , Y ) · σ Z K ( X ) , Y = σ X , Y · ( μ X × id ) . For a pair ( Φ , y ) Z 2 ( X ) × Y ,
μ X × Y · Z ( σ X , Y ) · σ Z ( X ) , Y ( Φ , y ) = { Definition of σ } μ X × Y · Z ( σ X , Y ) ( · ( Φ × η Y ( y ) ) ) = { Definition of Z , σ } μ X × Y ( ( ψ , y ) Z ( X ) × Y · ( Φ × η Y ( y ) ) ( ψ , y ) η Z ( X × Y ) ( σ X , Y ( ψ , y ) ) ) = { · ( f × g ) ( x , y ) = f ( x ) g ( y ) } μ X × Y ( ( ψ , y ) Z ( X ) × Y ( Φ ( ψ ) η Y ( y ) ( y ) ) η Z ( X × Y ) ( σ X , Y ( ψ , y ) ) ) = { Definition of η } μ X × Y ( ψ Z ( X ) Φ ( ψ ) η Z ( X × Y ) ( σ X , Y ( ψ , y ) ) ) = { Definition of σ } μ X × Y ( ψ Z ( X ) Φ ( ψ ) η Z ( X × Y ) ( · ( ψ × η Y ( y ) ) ) ) = { Definition of μ } ψ Z ( X × Y ) ( ψ Z ( X ) Φ ( ψ ) η Z ( X × Y ) ( · ( ψ × η Y ( y ) ) ) ( ψ ) ) ψ = { Definition of η } ψ Z ( X ) Φ ( ψ ) ( · ( ψ × η Y ( y ) )
For the right side of the equation,
σ X , Y · ( μ X × id ) ( Φ , y ) = { Definition of μ } σ X , Y ( ψ Z ( X ) Φ ( ψ ) ψ , y ) = { Definition of σ } · ( ( ψ Z ( X ) Φ ( ψ ) ψ ) × η Y ( y ) ) = { Distributive law : · ( i f i × g ) = i ( · ( f i × g ) ) } ψ Z ( X ) · ( Φ ( ψ ) ψ × η Y ( y ) ) = { Constant Φ ( ψ ) } ψ Z ( X ) Φ ( ψ ) ( · ( ψ × η Y ( y ) ) .
In the proof of Theorem 1, we defined a left tensorial strength σ with components σ X , Y : Z ( X ) × Y Z ( X × Y ) as
σ X , Y ( ψ , y ) = · ( ψ , η Y ( y ) ) = λ x , λ y . ( ψ ( x ) η Y ( y ) ( y ) ) .
Of course, a “swapped” tensorial strength σ with components σ X , Y : X × Z ( Y ) Z ( X × Y ) can be obtained by applying swapping operation from the left tensorial strength:
( X × Z ( Y ) s Z ( Y ) × X σ Y , X Z ( Y × X ) Z ( s ) Z ( X × Y ) ) .
where s = ^ π 2 , π 1 is product communicating. Formally,
σ X , Y = · ( η X ( x ) × ϕ ) = λ x . λ y . ( η X ( x ) ( x ) ϕ ( y ) ) .
With both σ X , Y and σ X , Y , there are two ways to obtain Z ( X ) × Z ( Y ) Z ( X × Y ) , as depicted in the following diagram. If the diagram commutes, then Z is commutative with left and right strength natural transformations σ X , Y , σ X , Y . We use γ : Z ( X ) × Z ( Y ) Z ( X × Y ) to denote the composed arrow.
Mathematics 09 00272 i004
Theorem 2.
The triple ( Z , η , μ ) is a commutative monad.
Proof. 
To show the diagram is commutative, select a pair of membership functions ( ψ 1 , ψ 2 ) Z ( X ) × Z ( Y ) , then
μ X × Y · Z ( σ X , Y ) · σ X , Z ( Y ) ( ψ 1 , ψ 2 ) = { Definition of σ } μ X × Y ( Z ( σ X , Y ) ( · ( ψ 1 × η Z ( Y ) ( ψ 2 ) ) ) = { Definition of Z } μ X × Y ( ( x , ψ ) X × Z ( Y ) · ( ψ 1 × η Z ( Y ) ( ψ 2 ) ) ( x , ψ ) η Z ( X × Y ) ( σ X , Y ( x , ψ ) ) ) = { · ( f × g ) ( x , y ) = f ( x ) g ( y ) } μ X × Y ( ( x , ψ ) X × Z ( Y ) ( ψ 1 ( x ) η Z ( Y ) ( ψ 2 ) ( ψ ) ) η Z ( X × Y ) ( σ X , Y ( x , ψ ) ) ) = { Definition of η } μ X × Y ( x X ψ 1 ( x ) η Z ( X × Y ) ( σ X , Y ( x , ψ 2 ) ) ) = { Definition of σ } μ X × Y ( x X ψ 1 ( x ) η Z ( X × Y ) ( · ( η X ( x ) × ψ 2 ) ) ) = { Definition of μ } ψ Z ( X × Y ) ( x X ψ 1 ( x ) η Z ( X × Y ) ( · ( η X ( x ) × ψ 2 ) ) ( ψ ) ψ ) = { Definition of η } x X ( ψ 1 ( x ) ( · ( η X ( x ) × ψ 2 ) ) ) = ^ { Denotation } f 1
For the right side of the equation,
μ X × Y · Z ( σ X , Y ) · σ Z ( X ) , Y ( ψ 1 , ψ 2 ) = { Definition of σ } μ X × Y ( Z ( σ X , Y ) ( · ( η Z ( X ) ( ψ 1 ) × ψ 2 ) ) ) = { Definition of Z } μ X × Y ( ( ψ , y ) Z ( X ) × Y · ( η Z ( X ) ( ψ 1 ) × ψ 2 ) ( ψ , y ) η Z ( X × Y ) ( σ X , Y ( ψ , y ) ) ) = { · ( f × g ) ( x , y ) = f ( x ) g ( y ) } μ X × Y ( ( ψ , y ) Z ( X ) × Y ( η Z ( X ) ( ψ 1 ) ( ψ ) ψ 2 ( y ) ) η Z ( X × Y ) ( σ X , Y ( ψ , y ) ) ) = { Definition of η } μ X × Y ( y Y ψ 2 ( y ) η Z ( X × Y ) ( σ X , Y ( ψ 1 , y ) ) ) = { Definition of σ }
μ X × Y ( y Y ψ 2 ( y ) η Z ( X × Y ) ( · ( ψ 1 × η Y ( y ) ) ) ) = { Definition of μ } ψ Z ( X × Y ) ( y Y ψ 2 ( y ) η Z ( X × Y ) ( · ( ψ 1 × η Y ( y ) ) ) ( ψ ) ψ ) = { Definition of η } y Y ( ψ 2 ( y ) ( · ( ψ 1 × η Y ( y ) ) ) ) = ^ { Denotation } f 2
Note that f 1 ( x , y ) = ψ 1 ( x ) ψ 2 ( y ) = · ( ψ 1 × ψ 2 ) ( x , y ) = f 2 ( x , y ) . Hence the diagram commutes. □

4. Going Coalgebraic

4.1. Coalgebraic Models

Since the automata introduced in Section 2 are defined over the interval [ 0 , 1 ] , we assume the fuzzy-set monad Z = ( Z , η , μ ) is also defined over some complete residuated lattice ( [ 0 , 1 ] , m i n , m a x , , , 0 , 1 ) . The corresponding coalgebraic models are based on the fuzzy-set monad.
Example 2
([33]). Note that ( [ 0 , 1 ] , m i n , m a x , 0 , 1 ) is a complete lattice. Then there are several ways to construct complete residuated lattices ( [ 0 , 1 ] , m i n , m a x , , , 0 , 1 ) ; namely
  • Define
    x y = m a x ( x + y 1 , 0 ) x y = m i n ( 1 x + y , 1 )
    for x , y [ 0 , 1 ] . Then, ( [ 0 , 1 ] , m i n , m a x , , , 0 , 1 ) is a complete residuated lattice corresponding to the standard Lukasiewicz algebra.
  • Define
    x y = m i n ( x + y 1 , 0 ) x y 1 if x y y if y < x
    for x , y [ 0 , 1 ] . Then, ( [ 0 , 1 ] , m i n , m a x , , , 0 , 1 ) is a complete residuated lattice corresponding to the standard Gödel algebra.
  • Define
    x y = x · y x y 1 if x y y x if y < x
    for x , y [ 0 , 1 ] . Then, ( [ 0 , 1 ] , m i n , m a x , , , 0 , 1 ) is a complete residuated lattice corresponding to the standard product algebra.
Consider the two functors F I , O = Z ( × O ) I and T l , O = Z ( ) I × Z ( O ) I . Given a FMlA ( X , I , O , α , e ) , the corresponding T I , O -coalgebra is ( X , α ¯ , e ¯ : X Z ( X ) I × Z ( O ) I ) where f ¯ is the curried version of f. Given a FUA ( X , I , O , β ) , the corresponding F I , O -coalgebra is ( X , β ¯ : X Z ( X × O ) I ) . Obviously, there is a natural transformation θ from T I , O to F I , O :
θ ( f , g ) ( i ) = γ ( f ( i ) , g ( i ) )
for f Z ( X ) I , g Z ( O ) I and i I . In the sequel, F I , O -coalgebras provide a universal framework for defining fuzzy language and bisimulation for different fuzzy automata while T I , O -coalgebras serve as a basis for composition calculi of fuzzy Mealy automata.

4.2. Fuzzy Language

In [33], fuzzy automata with initial fuzzy subsets and final fuzzy subsets are equipped with the notion of fuzzy language over a set of input symbols. Due to the type of their initial/final fuzzy subsets, that notion can not be naturally extended to the case involving output. Here we consider the notion of fuzzy language over a set of input symbols and a set of output symbols based on F I , O -coalgebras.
Definition 8.
Let ( X , f ) be an F I , O -coalgebra. Define f : X Z ( X × O ) I as follows:
f ( x ) ( i ) ( y , o ) = f ( x ) ( i ) ( y , o ) f ( x ) ( ) ( y , ) = 1 if x = y 0 if x y f ( x ) ( i ) ( y , ) = 0 f ( x ) ( ) ( y , o ) = 0 f ( x ) ( w i ) ( y , v o ) = z X f ( x ) ( w ) ( z , v ) f ( z ) ( i ) ( y , o )
for x , y X , i I , o O , w I , v O . Note that ∅ represents the empty input/output.
Lemma 1.
Given an F I , O -coalgebra ( X , f ) , x , y X , w I , v O , if | w | | v | then
f ( x ) ( w ) ( y , v ) = 0 .
Proof. 
First, we prove the result for | w | > | v | by induction on | w | = n . Let x , y X , w I , v O . If n = 0 , there exists no v such that | v | < 0 and hence the result holds. If n = 1 , then v = and the result holds by the Definition 8. Assume that the result is true for all | w | I such that | w | = n 1 , n > 1 . Now there are two cases: | v | = and | v | . For the case | v | = , let | w | = w i , where | w | = n , i I , and then
f ( x ) ( w i ) ( y , ) = z X f ( x ) ( w ) ( z , ) f ( z ) ( i ) ( y , ) .
By the induction hypothesis, f ( x ) ( w ) ( z , ) = f ( z ) ( i ) ( y , ) = 0 and thus the result holds. For the case | v | , let w = w i , v = v o where | w | = n > | y | , i I , o O and then
f ( x ) ( w i ) ( y , v o ) = z X f ( x ) ( w ) ( z , v ) f ( z ) ( i ) ( y , o ) .
By the induction hypothesis, f ( x ) ( w ) ( z , v ) = 0 and hence z X , f ( x ) ( w ) ( z , v ) f ( z ) ( i ) ( y , o ) = 0 . Therefore, the result holds.
Second, by a similar proof, we can prove the result holds for | w | < | v | by induction on | y | = n . □
Lemma 2.
Given an F I , O -coalgebra ( X , f ) , x , y X , w 1 , w 2 I , v 1 , v 2 O , if | w 1 | = | v 1 | and | w 2 | = | v 2 | , then
f ( x ) ( w 1 w 2 ) ( y , v 1 v 2 ) = z X f ( x ) ( w 1 ) ( z , v 1 ) f ( z ) ( w 2 ) ( y , v 2 )
Proof. 
The results can be proved by induction on | w 2 | = n . If n = 0 , then w 2 = v 2 = and w 1 w 2 = w 1 , v 1 v 2 = v 1 . Since f ( x ) ( ) ( y , ) is 1 when x = y and f ( x ) ( ) ( y , ) is 0 otherwise,
f ( x ) ( w 1 ) ( y , v 1 ) = z X f ( x ) ( w 1 ) ( z , v 1 ) f ( z ) ( ) ( y , )
holds, which completes the proof of the base case. Now assume that the result is true for all | w 2 | = n 1 , n > 0 . Let w 2 = w i and v 2 = v o , where | w | = | v | = n 1 , i I , o O . Then
f ( x ) ( w 1 w 2 ) ( y , v 1 v 2 ) = f ( x ) ( w 1 w i ) ( y , v 1 v o ) = z X f ( x ) ( w 1 w ) ( z , v 1 v ) f ( z ) ( i ) ( y , o ) = z X ( r X f ( x ) ( w 1 ) ( r , v 1 ) f ( r ) ( w ) ( y , v ) ) f ( z ) ( i ) ( y , o ) = z X ( r X f ( x ) ( w 1 ) ( r , v 1 ) f ( r ) ( w ) ( y , v ) f ( z ) ( i ) ( y , o ) ) = r X ( z X f ( x ) ( w 1 ) ( r , v 1 ) f ( r ) ( w ) ( y , v ) f ( z ) ( i ) ( y , o ) ) = r X ( f ( x ) ( w 1 ) ( r , v 1 ) z X f ( r ) ( w ) ( y , v ) f ( z ) ( i ) ( y , o ) ) = r X f ( x ) ( w 1 ) ( r , v 1 ) f ( r ) ( w i ) ( y , v o ) = r X f ( x ) ( w 1 ) ( r , v 1 ) f ( r ) ( w 2 ) ( y , v 2 )
Now we consider a generic fuzzy language for F I , O -coalgebras and naturally obtain the definition for the fuzzy language accepted by a fuzzy automaton.
Definition 9 (Fuzzy language).
A fuzzy language over an input set I and an output set O (with membership values over K ), is a fuzzy subset of ( I O ) , that is a function ϕ : ( I O ) [ 0 , 1 ] .
Example 3.
For instance, let I = { i 1 , i 2 } , O = { o 1 , o 2 } . A fuzzy language ϕ can be defined as ϕ ( i 1 o 1 ) = 0.6 , ϕ ( i 1 o 2 ) = 0.8 , ϕ ( i 2 o 1 ) = 0.5 , ϕ ( i 2 o 2 ) = 1 and ϕ ( s ) = 0 , s ( I O ) , | s | 2 .
Definition 10.
Consider an F I , O -coalgebra ( X , f : X Z ( X × O ) I ) . For w = i 1 o 1 i 2 o 2 ( I O ) , define w i = i 1 i 2 and w o = o 1 o 2 . Given an initial fuzzy state ϵ Z ( X ) and a final fuzzy state τ Z ( X ) , the fuzzy language L f recognized by ( X , f ) is defined by
L f ( w ) = x , y X ϵ ( x ) f ( x ) ( w i ) ( y , w o ) τ ( y ) , w ( I O ) .
Naturally, the fuzzy language recognized by a FUA ( X , I , O , β ) is the one recognized by its corresponding F I , O -coalgebra ( X , β ¯ ) .
When considering the language recognized by an FMlA, the membership values of the next state and the output must be integrated, which can be captured by the natural transformation θ .
Definition 11.
The fuzzy language recognized by a FMlA ( X , I , O , α , e ) is the one recognized by the corresponding F I , O -coalgebra ( X , θ ( α ¯ , e ¯ ) ) .

4.3. Bisimulation

Let us now discuss the notion of bisimulation for fuzzy automata. In fact, coalgebra theory provides a generic notion of bisimulation on H-coalgebras for any functor H [20].
Definition 12 (H-bisimulation).
Given two H-coalgebras ( X , f : X H ( X ) ) and ( Y , g : Y H ( Y ) ) , an H-bisimulation between them is a relation R X × Y such that there exists an H-coalgebra ( R , h : R H ( R ) ) making the following diagram to commute.
Mathematics 09 00272 i005
Theorem 3.
Given two T I , O -coalgebras ( X , f ) and ( Y , g ) , if R X × Y is a T I , O -bisimulation, then R is an F I , O -bisimulation between ( X , θ f ) and ( X , θ g ) .
Proof. 
The proof of the result is immediate from the definition. □
We now consider concrete bisimulations for different types of fuzzy automata. Since FMrA can be easily transformed to FMlA, we only focus on bisimulation for FMlA and FUA. Given a FMlA ( X , I , O , α , e ) , denote a transition x o , v 2 i , v 1 x if α ( x , i ) ( x ) = v 1 , e ( x , i ) ( o ) = v 2 . Given a FUA ( X , I , O , β ) , denote a transition x i | v | o x if β ( x , i ) ( x , o ) = v .
Definition 13 (Bisimulation for FMlA).
Given two FMlA ( X , I , O , α , e ) and ( Y , I , O , α , e ) , R X × Y is a concrete bisimulation if it satisfies the following properties.
  • For ( x , y ) R , if x o , v 2 i , v 1 x , there exists y Y , such that y o , v 2 i , v 1 y and ( x , y ) R .
  • For ( x , y ) R , if y o , v 2 i , v 1 y , there exists x X , such that x o , v 2 i , v 1 x and ( x , y ) R .
Definition 14 (Bisimulation for FUA).
Given two FUA p = ( X , I , O , β ) and q = ( Y , I , O , β ) , R X × Y is a concrete bisimulation if it satisfies the following properties.
  • For ( x , y ) R , if x i | v | o x , there exists y Y , such that y i | v | o y and ( x , y ) R .
  • For ( x , y ) R , if y i | v | o y , there exists x X , such that x i | v | o x and ( x , y ) R .
Theorem 4.
Given two FMlA ( X , I , O , α , e ) and ( Y , I , O , α , e ) , R is a concrete bisimulation if and only if R is a T I , O -bisimulation between their corresponding T I , O -coalgebras.
Proof. 
The proof of the result is immediate from the definition. □
Theorem 5.
Given two FUA ( X , I , O , β ) and ( Y , I , O , β ) , R is a concrete bisimulation if and only if R is an F I , O -bisimulation between their corresponding F I , O -coalgebras.
Proof. 
The proof of the result is immediate from the definition. □
Since the core idea of fuzzy automata is fuzzing, the concrete bisimulation induced by coalgebraic bisimulation seems to be too strict. To find a more suitable characterization of bisimulation of fuzzy automata, we introduce the notion of approximate ϵ -bisimulation, which requires that membership values for states in an approximate ϵ -bisimulation of two transition branches should have a difference less than ϵ .
Definition 15 ( ϵ -Bisimulation for FMlA).
Given two FMlA ( X , I , O , α , e ) and ( Y , I , O , α , e ) , a relation R X × Y is an approximate ϵ-bisimulation ( ϵ > 0 ) if for all ( x , y ) R :
  • If x o , v 2 i , v 1 x , there exists y Y , such that y o , u 2 i , u 1 y , | u 1 v 1 | ϵ , | u 2 v 2 | ϵ and ( x , y ) R .
  • If y o , u 2 i , u 1 y , there exists x X , such that x o , v 2 i , v 1 x , | u 1 v 1 | ϵ , | u 2 v 2 | ϵ and ( x , y ) R .
Example 4.
Consider two FMlA ( X , I , O , α , e ) and ( Y , I , O , α , e ) , where X = { x 1 , x 2 } , Y = { y 1 , y 2 } , I = { i } , O = { o } , α ( x 1 , i ) ( x 2 ) = 0.6 , e ( x 1 , i ) ( o ) = 0.4 , α ( y 1 , i ) ( y 2 ) = 0.5 , e ( y 1 , i ) ( o ) = 0.5. Then, R = { ( x 1 , y 1 ) , ( x 2 , y 2 ) } is an approximate 0.1 -bisimulation.
Definition 16 ( ϵ -Bisimulation for FUA).
Given two FUA ( X , I , O , β ) and ( Y , I , O , β ) , a relation R X × Y is an approximate ϵ-bisimulation ( ϵ > 0 ) if for all ( x , y ) R ,
  • If x i | u | o x , then there exists y such that y i | v | o y , | u v | ϵ and ( x , y ) R ;
  • If y i | v | o y , then there exists x such that x i | u | o x , | u v | ϵ and ( x , y ) R .
Example 5.
Consider two FUA ( X , I , O , β ) and ( Y , I , O , β ) , where X = { x 1 , x 2 } , Y = { y 1 , y 2 } , I = { i } , O = { o } , β ( x 1 , i ) ( x 2 , o ) = 0.8 , β ( y 1 , i ) ( y 2 , o ) = 0.7 . Then, R = { ( x 1 , y 1 ) , ( x 2 , y 2 ) } is an approximate 0.1 -bisimulation.
Proposition 1.
For approximate ϵ-bisimulation, we have
1.
R is an approximate ϵ-bisimulation if and only if R 1 is an approximate ϵ-bisimulation.
2.
If R i is an approximate ϵ i -bisimulation for i = 1 , 2 , then R 1 R 2 is an approximate ( ϵ 1 + ϵ 2 ) -bisimulation.
3.
If R i is an approximate ϵ i -bisimulation, then i R i is an approximate m a x i { ϵ i } -bisimulation.
Proof. 
The proof of the result is immediate from the definition. □

5. Composition for FMlA

A family of combinators for B ( × O ) I -coalgebras where B is a monad, such as sequential composition ( ; ) , parallel ( ) , choice ( ) and concurrency ( ) combinators were introduced in [32]. Therefore, the composition of FUA can be naturally instantiated. However, an FMlA assigns different membership values to the next state and the corresponding output, which should be separated for composition. With some abuse of notation, we construct sequential composition ( ; ) , parallel ( ) , choice ( ) and concurrency ( ) combinators for FMlA. Consider three fuzzy Mealy automata p , q , r with the corresponding coalgebras
p = ( X p , α p ¯ , e p ¯ : X p Z ( X p ) I × Z ( O ) I ) q = ( X q , α q ¯ , e q ¯ : X q Z ( X q ) J × Z ( R ) J ) r = ( X r , α r ¯ , e r ¯ : X r Z ( X r ) O × Z ( R ) O ) . ( )
Some standard isomorphisms in Set are used in the definitions of combinators:
a : A × B × C A × ( B × C ) s : A × B B × A xr : A × B × C A × C × B m : A × B × ( C × D ) A × C × ( B × D ) dist : A × ( B + C ) A × B + A × C
Furthermore, combinators a + , s + , xr + , m + are the corresponding isomorphisms for sums in Set . Finally, the inverse of an isomorphism i is denoted by i 1 .
The sequential composition combinator; requires the compatibility of interfaces. The sequential composition of p , r actually shares the data which is sent out from p. From a coalgebraic point of view, it is a T I , R -coalgebra
p ; r = ( X p × X r , α p ; r ¯ , e p ; r ¯ )
where α p ; r is defined as:
X p × X r × I xr X p × I × X r α p , e p × id Z ( X p ) × Z ( O ) × X r a xr Z ( X p ) × ( X r × Z ( O ) ) id × σ X r , O Z ( X p ) × Z ( X r × O ) id × Z α r Z ( X p ) × Z Z ( X r ) γ ( id × μ ) Z ( X p × X r )
and e p ; r is defined as:
X p × X r × I xr X p × I × X r e p × id Z ( O ) × X r σ X r , O s Z ( X r × O ) Z e r Z Z ( R ) μ Z ( R )
The parallel combinator ⊠ corresponds to synchronous product and composes two coalgebras into one with their inputs (outputs) merged together. The parallel p q produces an output belonging to O × R after receiving an input belonging to I × J . Coalgebraically, the semantics of the parallel combinator is a T I × J , O × R -coalgebra
p q = ( X p × X p , α p q ¯ , e p q ¯ )
where α p q is defined as:
X p × X q × ( I × J ) m X p × I × ( X q × J ) α p × α q Z ( X p ) × Z ( X q ) γ Z ( X p × X q )
and e p q is defined as
X p × X q × ( I × J ) m X p × I × ( X q × J ) e p × e q Z ( O ) × Z ( R ) γ Z ( O × R )
The choice p q allows the environment to choose either to input a value of type I or one of type J, which will trigger the corresponding automata, producing the associated output. A formal definition is
p q = ( X p × X q , α p q ¯ , e p q ¯ )
where α p q is defined as
X p × X q × ( I + J ) dist X p × X q × I + X p × X q × J xr + a X p × I × X q + X p × ( X q × J ) α p × id + id × α q Z ( X p ) × X q + X p × Z ( X q ) [ σ X p , X q , σ X p , X q ] Z ( X p × X q )
and e p q is defined as
X p × X q × ( I + J ) dist X p × X q × I + X p × X q × J xr + a X p × I × X q + X p × ( X q × J ) e p π 1 + e q π 2 Z ( O ) + Z ( R ) [ Z ( ι 1 ) , Z ( ι 2 ) ] Z ( O + R )
The concurrency combinator ⊡ combines choice and parallel, in the sense that two fuzzy Mealy automata p and q can be executed depending on the input supplied. Let I J = I + J + I × J and O R = O + R + O × R . The semantics of ⊡ is given by
p q = ( X p × X q , α p q ¯ , e p q ¯ )
where α p q is defined as
X p × X q × ( I J ) dist X p × X q × ( I + J ) + X p × X q × ( I × J ) α p q + α p q Z ( X p × X q ) + Z ( X p × X q ) [ Z ( id ) , Z ( id ) ] Z ( X p × X q )
and e p q is defined as
X p × X q × ( I J ) dist X p × X q × ( I + J ) + X p × X q × ( I × J ) e p q + e p q Z ( O + R ) + Z ( O × R ) [ Z ( ι 1 ) , Z ( ι 2 ) ] Z ( O R )
In coalgebra theory, it is [20] shown that the graph of a T I , O -homomorphism is a T I , O -bisimulation and the greatest T I , O -bisimulation is an equivalence relationship ∼. Thus for two given FMlA p , q , if there exists a T I , O -homomorphism between their corresponding coalgebras p , q , we denote p q .
Theorem 6.
For appropriately typed FMlA p , q , r , p , q ,
( p ; q ) ; r p ; ( q ; r ) ( p p ) ; ( q q ) ( p ; q ) ( p , q ) ( p p ) ; ( q q ) ( p ; q ) ( p , q ) ( p p ) ; ( q q ) ( p ; q ) ( p , q )
Proof. 
The proof proceeds by pointwise induction. For the first law, if we assume
α p ( x 1 , i ) ( x 1 ) = k 1 , e p ( x 1 , i ) ( j ) = t 1 α q ( x 2 , j ) ( x 2 ) = k 2 , e q ( x 2 , j ) ( o ) = t 2 α r ( x 3 , o ) ( x 3 ) = k 3 , e r ( x 3 , o ) ( h ) = t 3
we can obtain
α ( p ; q ) ; r ( x 1 , x 2 , x 3 ) ( i ) ( x 1 , x 2 , x 3 ) = k 1 k 2 k 3 t 1 t 2 = α p ; ( q ; r ) ( x 1 , ( x 2 , x 3 ) ) ( i ) ( x 1 , ( x 2 , x 3 ) ) e ( p ; q ) ; r ( x 1 , x 2 , x 3 ) ( i ) ( h ) = t 1 t 2 t 3 = e p ; ( q ; r ) ( x 1 , ( x 2 , x 3 ) ) ( i ) ( h )
With these equations, it is easy to show a is a T I , O -homomorphism from ( p ; q ) ; r to p ; ( q ; r ) . Other laws can be proved similarly. □
Connecting FMlA through isomorphisms leads to a bisimilarity up to an isomorphic rearranging of input types and output types. Let f , g be isomorphic rearrangements of input types and output types respectively. We use p { f , g } to denote the FMlA after arranging the input and the output types in the FMlA p.
Theorem 7.
For appropriately typed FMlA p , q , r ,
p q ( q p ) { s , s } p q q p { s + , s + } p q q p { s + + s , s + + s } ( p q ) r p ( q r ) { a , a 1 } ( p q ) r p ( q r ) { a + , a + 1 } ( p q ) r p ( q r ) { a , a 1 }
where a is a natural isomorphism from ( A B ) C to A ( B C ) and its inverse is denoted by a 1 .
Proof. 
Similar to Theorem 6. □
The two theorems demonstrate that our combinators are well defined. In the sequel, we compare them with the ones in [32] up to the natural transformation θ through a theorem and an example.
Theorem 8.
Given two FMlA p , q with the corresponding coalgebras in ( ) , the following equations holds.
θ ( α p q ¯ , e p q ¯ ) = θ ( α p ¯ , e p ¯ ) θ ( α q ¯ , e q ¯ ) θ ( α p q ¯ , e p q ¯ ) = θ ( α p ¯ , e p ¯ ) θ ( α q ¯ , e q ¯ ) θ ( α p q ¯ , e p q ¯ ) = θ ( α p ¯ , e p ¯ ) θ ( α q ¯ , e q ¯ )
where , , correspond to our combinators in the left side and the ones for composing F I , O -coalgebras in [32] in the right side.
Proof. 
The proof proceeds by pointwise induction. For the first law, if we assume
α p ( x 1 , i ) ( x 1 ) = k 1 , e p ( x 1 , i ) ( j ) = t 1 α q ( x 2 , j ) ( x 2 ) = k 2 , e q ( x 2 , j ) ( o ) = t 2
we obtain
θ ( α p q ¯ , e p q ¯ ) ( ( x 1 , x 2 ) , i ) ( ( x 1 , x 2 ) , o ) = α p q ¯ ( ( x 1 , x 2 ) , i ) ( x 1 , x 2 ) e p q ¯ ( ( x 1 , x 2 ) , i ) ( o ) = ( k 1 k 2 ) ( t 1 t 2 ) = ( k 1 t 1 ) ( k 2 t 2 ) = θ ( α p ¯ , e p ¯ ) ( x 1 , i ) ( x 1 , o ) θ ( α q ¯ , e q ¯ ) ( x 2 , i ) ( x 2 , o ) = θ ( α p ¯ , e p ¯ ) θ ( α q ¯ , e q ¯ )
Other laws can be proved similarly. □
Note that the case for the sequential composition combinator does not always hold. Actually, this depends on the complete residuated lattice used, since the state transition of the first component is considered twice, which can be demonstrated by the following example.
Example 6.
Recall the standard product algebra in Example 2. Consider two FMlA p = ( { x 1 , x 2 } , { a } , { b } , α p , e p ) and r = ( { y 1 , y 2 } , { b } , { c } , α r , e r ) where α p ( x 1 , a ) ( x 2 ) = 0.4 , e p ( x 1 , a ) ( b ) = 0.5 and α r ( y 1 , b ) ( y 2 ) = 0.8 , e r ( y 1 , b ) ( c ) = 0.5 . Then we can obtain p ; r = ( U , α p ; r ¯ , e p ; r ¯ ) where U = { ( x i , y j ) | i , j = 1 , 2 } , α p ; r ( ( x 1 , y 1 ) , a ) ( x 2 , y 2 ) = 0.4 × 0.5 × 0.8 = 0.16 and e p ; r ( ( x 1 , y 1 ) , a ) ( c ) = 0.5 × 0.5 = 0.25 . Therefore
θ ( α p ; r ¯ , e p ; r ¯ ) ( ( x 1 , y 1 ) , a ) ( ( x 2 , y 2 ) , c ) = 0.16 × 0.25 = 0.04 .
However, θ ( α p ¯ , e p ¯ ) ( x 1 , a ) ( x 2 , b ) = 0.4 × 0.5 = 0.2 and θ ( α r ¯ , e r ¯ ) ( x 1 , a ) ( x 2 , b ) = 0.8 × 0.5 = 0.4 . Thus,
θ ( α p ¯ , e p ¯ ) ; θ ( α r ¯ , e r ¯ ) ( ( x 1 , y 1 ) , a ) ( ( x 2 , y 2 ) , c ) = 0.2 × 0.4 = 0.08 .
Oppositely, if we consider the standard Gödel algebra, the two values will be both 0.4.

6. Case Study

In the sequel, we illustrate the use of fuzzy components by means of a concrete example. For simplicity, we consider an non-fuzzy input-output function and compose components with F I , O -coalgebras. Consider the following example of a steam turbine.
Mathematics 09 00272 i006
The system is composed of two fuzzification components Temp , Press and a defuzzification component Setting with corresponding membership functions illustrated in Figure 1. Note that Δ represents the copy operation.
In practice, the components Temp and Press execute in parallel. Each one will produce a membership value corresponding to the state and membership function after receiving a mode signal. After that, the minimum of the two output values will become the input of Setting . The membership function of the Setting component is determined by the following rules (for simplicity, only whose conditions with temperature COOL are displayed).
rule 1 : If temperature is COOL and pressure is WEAK then throttle is P 3 . rule 2 : If temperature is COOL and pressure is LOW then throttle is P 2 . rule 3 : If temperature is COOL and pressure is OK then throttle is Z . rule 4 : If temperature is COOL and pressure is STRONG then throttle is N 2 . rule 5 : If temperature is COOL and pressure is HIGH then throttle is N 3 .
The output functions are considered as non-fuzzy in this example.
(i)
The coalgebraic semantic of component Temp
Temp = ( T , θ α t ¯ , e t ¯ ) : T Z ( T × [ 0 , 1 ] ) I )
is actually an F I , [ 0 , 1 ] -coalgebra. In this model, states are the temperature over T = [ T 0 , T 9 ] , inputs are operation modes over set I = {COLD,COOL,NORMAL,WARM,HOT} that are decided by users. The fuzzy transition function is constant on the temperature and given by α t : T × I [ 0 , 1 ] T with
t , COLD ϕ C O L , t , COOL ϕ C O O , t , NORMAL ϕ N O R , t , WARM ϕ W A R , t , HOT ϕ H O T
for all t [ T 0 , T 9 ] R . The output function e t : T × I [ 0 , 1 ] is defined by ( t , i ) eval ( α t ( t , i ) , t ) where eval is an evaluation function. As a concrete example, suppose the fuzzy subset for the NORMAL mode is the function
ϕ N O R ( t ) = m a x { 0 , 2 T 3 T 6 ( t T 3 + T 6 2 ) + 1 } .
Then the membership value (output) over state T 3 + T 6 2 under the mode NORMAL is e t ( T 3 + T 6 2 , NORMAL ) = eval ( ϕ N O R , T 3 + T 6 2 ) = 1 .
(ii)
Press is a component whose state space P is given by the pressure in the steam turbine and inputs are over the set I = { WEAK , LOW , OK , STRONG , HIGH } , which represent the mode triggered by the users. The output of this component is the membership value corresponding to the current fuzzy state. The dynamics of this component is
Press = ( P , θ α p ¯ , e p ¯ ) : P Z ( P × [ 0 , 1 ] ) I )
with the transition and output functions defined as α p : P × I Z ( P ) :
p , WEAK ϕ W E A K , p , LOW ϕ L O W , p , OK ϕ O K , p , STRONG ϕ S T R O N G , p , HIGH ϕ H I G H
for p P and
o p : P × I [ 0 , 1 ] : ( p , i ) ev ( α p ( p , i ) , p ) .
(iii)
The dynamics of Rule and And components are denoted by Ψ 1 and Ψ 2 where
Ψ 1 = ( 1 , η ( 1 × O ) · id , Ψ 1 ¯ : 1 Z ( 1 × O ) I × I ) .
In this expression O is the output set determined by the output function, namely,
Ψ 1 : 1 × ( I × I ) O
Ψ 1 ( , ( i , i ) ) = P 3 i = COOL i = WEAK P 2 i = COOL LOW Z i = COOL OK N 2 i = COOL STRONG N 3 i = COOL HIGH
1 = { } is the singleton set. The notation ⌜f⌝ is the representation of function f : A B , which is defined as a coalgebra f = ( 1 , c ¯ f ) , where c f = 1 × A id × f 1 × B η ( 1 × B ) Z ( 1 × B ) . The definition of Ψ 2 is similar, given a pair of inputs of [ 0 , 1 ] , it outputs the minimum value of the two.
(iv)
The last component Setting works as follows. Through the channel it interacts with Temp and Press . It receives the mode information and a membership value as the current state. The mode information determines which membership function is accessible for the component. Then the component outputs an area whose boundary consists of the horizontal axis and the graph of the membership function. Formally, this model is represented by a coalgebra
Setting = ( D , θ α s ¯ , e s ¯ ) : D Z ( D × P ( R 2 ) ) O × [ 0 , 1 ] )
where D = [ MIN , MAX ] is an interval of real numbers. The output function is defined as e s ( d , ( o , r ) ) = { ( x , y ) | 0 y m i n { α s ( x , ( o , r ) ) , r } , x [ MIN , MAX ] } . Resorting to centroid defuzzification technique, the output stage processes combine areas and produce a control value, which will participate in the control of the system.

7. Conclusions and Future Work

The present work aims at addressing fuzzy automata from a coalgebraic perspective. Our starting point was studying the fuzzy-set monad further. We defined a left tensorial strength and a right tensorial strength, and proved it is a strong and commutative monad. With these properties, we modeled different types of fuzzy automata as coalgebraic models with the same transition structure. Based on these coalgebraic models, we defined the notions of fuzzy language bisimulation between fuzzy automata. Moreover, we developed some compositional combinators for fuzzy Mealy automata of two kinds: state transition and output function and compared it with the classical component calculi in [32]. Finally, through a case study, we discussed the application of our component calculi.
Besides these fundamental results, there are several topics left to explore. One is to define a notion of refinement [38] of fuzzy automata, to specify an inclusion relation of fuzzy behaviour. Fuzzy automata may involve complex behaviour such as non-deterministic transitions or branched transitions with probability [23,39]. Therefore another topic for future work is to develop more complex versions of fuzzy automata and analyze their behavior and discuss their properties, namely of the suitable notions of bisimulation as in [15,35,36].

Author Contributions

Conceptualization, M.S. and L.S.B.; methodology, A.L. and S.W.; formal analysis, A.L. and S.W.; investigation, A.L.; writing—original draft preparation, A.L. and S.W.; writing—review and editing, M.S. and L.S.B. All authors have read and agreed to the published version of the manuscript.

Funding

This work has been supported by the Guangdong Science and Technology Department (Grant No. 2018B010107004) and the National Natural Science Foundation of China under grant No. 61772038, 61532019 and 61272160. L.S.B. was supported by the ERDF—European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation-COMPETE 2020 Programme and by National Funds through the Portuguese funding agency, FCT, within project KLEE - POCI-01-0145-FEDER-030947.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

This work is also supported by Hiroshima University. Many thanks to the reviewers and editors.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Tanaka, K. An Introduction to Fuzzy Logic for Practical Applications; Springer: Berlin/Heidelberg, Germany, 1997. [Google Scholar]
  2. Zadeh, L.A. Soft Computing and Fuzzy Logic. IEEE Softw. 1994, 11, 48–56. [Google Scholar] [CrossRef]
  3. Syropoulos, A.; Grammenos, T. Fuzzy Computation; A Modern Introduction to Fuzzy Mathematics; John Wiley & Sons: Hoboken, NJ, USA, 2020; pp. 191–214. [Google Scholar] [CrossRef]
  4. Wu, H.; Gu, X.; Zhen, L. Fuzzy Principal Component Analysis Model on Evaluating Innovation Service Capability. Sci. Program. 2020, 2020, 8834901. [Google Scholar] [CrossRef]
  5. Böhme, M.; Pham, V.; Roychoudhury, A. Coverage-Based Greybox Fuzzing as Markov Chain. IEEE Trans. Softw. Eng. 2019, 45, 489–506. [Google Scholar] [CrossRef]
  6. Simon, D.J. Introduction to Fuzzy Control. In Embedded Systems Programming; Electrical Engineering & Computer Science Faculty Publications: Cambridge, MA, USA, 2003; Volume 16, pp. 55–56. [Google Scholar]
  7. Doostfatemeh, M.; Kremer, S.C. New directions in fuzzy automata. Int. J. Approx. Reason. 2005, 38, 175–214. [Google Scholar] [CrossRef] [Green Version]
  8. Chaudhari, S.R.; Desai, A.S. On fuzzy Mealy and Moore machines. Bull. Pure Appl. Math 2010, 4, 375–384. [Google Scholar]
  9. Mordeson, J.N.; Nair, P.S. Fuzzy Mealy machines. Kybernetes 1966, 25, 18–33. [Google Scholar] [CrossRef]
  10. Li, Y.; Pedrycz, W. The equivalence between fuzzy Mealy and fuzzy Moore machines. Soft Comput. 2006, 10, 953–959. [Google Scholar] [CrossRef]
  11. Todinca, D.; Sora, I.; Butoianu, D.; Precup, R. A Novel Method to Compute the Membership Value of the States of Fuzzy Automata. In Proceedings of the 2018 IEEE 12th International Symposium on Applied Computational Intelligence and Informatics (SACI), Timisoara, Romania, 17–19 May 2018; pp. 107–112. [Google Scholar] [CrossRef]
  12. Pan, H.; Li, Y.; Cao, Y.; Li, P. Nondeterministic fuzzy automata with membership values in complete residuated lattices. Int. J. Approx. Reason. 2017, 82, 22–38. [Google Scholar] [CrossRef]
  13. Tiwari, S.P.; Pal, P. On a category of deterministic fuzzy automata. In 11th Conference of the European Society for Fuzzy Logic and Technology (EUSFLAT 2019); Atlantis Studies in Uncertainty Modelling; Atlantis Press: Paris, France, 2019; Volume 1. [Google Scholar] [CrossRef]
  14. Mockor, J. Monads and a common framework for fuzzy type automata. Int. J. Gen. Syst. 2019, 48, 406–442. [Google Scholar] [CrossRef]
  15. Singh, A.K.; Tiwari, S.P. Fuzzy Regular Languages Based on Residuated Lattice. New Math. Nat. Comput. 2020, 16, 363–376. [Google Scholar] [CrossRef]
  16. Yang, C.; Li, Y. Approximate bisimulations and state reduction of fuzzy automata under fuzzy similarity measures. Fuzzy Sets Syst. 2020, 391, 72–95. [Google Scholar] [CrossRef]
  17. Yang, C.; Li, Y. ϵ-Bisimulation Relations for Fuzzy Automata. IEEE Trans. Fuzzy Syst. 2018, 26, 2017–2029. [Google Scholar] [CrossRef]
  18. Yang, C.; Li, Y. Approximate bisimulation relations for fuzzy automata. Soft Comput. 2018, 22, 4535–4547. [Google Scholar] [CrossRef]
  19. Rutten, J.J.M.M. Automata and coinduction (an exercise in coalgebra). In International Conference on Concurrency Theory, Proceedings of the CONCUR 1998: CONCUR’98 Concurrency Theory, Nice, France, 8–11 September 1998; Springer: Berlin/Heidelberg, Germany, 1998; Volume 1466, pp. 194–218. [Google Scholar]
  20. Rutten, J.J.M.M. Universal coalgebra: A theory of systems. Theor. Comput. Sci. 2000, 249, 3–80. [Google Scholar] [CrossRef] [Green Version]
  21. Jacobs, B. Introduction to Coalgebra: Towards Mathematics of States and Observation; Cambridge Tracts in Theoretical Computer Science; Cambridge University Press: Cambridge, UK, 2016; Volume 59. [Google Scholar]
  22. Silva, A.; Bonchi, F.; Bonsangue, M.M.; Rutten, J.J.M.M. Generalizing determinization from automata to coalgebras. Log. Methods Comput. Sci. 2013, 9. [Google Scholar] [CrossRef] [Green Version]
  23. Sokolova, A. Coalgebraic Analysis of Probabilistic Systems. Ph.D. Thesis, Technische Universiteit Eindhoven, Eindhoven, The Netherlands, 2005. [Google Scholar]
  24. Neves, R.; Barbosa, L.S. Hybrid Automata as Coalgebras. In International Colloquium on Theoretical Aspects of Computing, Proceedings of the ICTAC 2016: Theoretical Aspects of Computing, Taipei, Taiwan, 24–31 October 2016; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9965, pp. 385–402. [Google Scholar] [CrossRef] [Green Version]
  25. Neves, R.; Barbosa, L.S. Languages and models for hybrid automata: A coalgebraic perspective. Theor. Comput. Sci. 2018, 744, 113–142. [Google Scholar] [CrossRef]
  26. Liu, A.; Sun, M. A Coalgebraic Semantics Framework for Quantum Systems. In International Conference on Formal Engineering Methods, Proceedings of the ICFEM 2019: Formal Methods and Software Engineering, Shenzhen, China, 5–9 November 2019; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2019; Volume 11852, pp. 387–402. [Google Scholar] [CrossRef]
  27. Feng, Y.; Duan, R.; Ying, M. Bisimulation for Quantum Processes. ACM Trans. Program. Lang. Syst. 2012, 34, 1–43. [Google Scholar] [CrossRef] [Green Version]
  28. Larsen, K.G.; Skou, A. Bisimulation through probabilistic testing. Inf. Comput. 1991, 94, 1–28. [Google Scholar] [CrossRef] [Green Version]
  29. Haghverdi, E.; Tabuada, P.; Pappas, G.J. Bisimulation Relations for Dynamical and Control Systems. Electr. Notes Theor. Comput. Sci. 2002, 69, 120–136. [Google Scholar] [CrossRef] [Green Version]
  30. Jacobs, B. Invariants, Bisimulations and the Correctness of Coalgebraic Refinements. In International Conference on Algebraic Methodology and Software Technology, Proceedings of the AMAST 1997: Algebraic Methodology and Software Technology, Sydney, Australia, 13–17 December 1997; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 1997; Volume 1349, pp. 276–291. [Google Scholar] [CrossRef]
  31. Venema, Y. Algebras and coalgebras. In Handbook of Modal Logic; Studies in Logic and Practical Reasoning; Elsevier B.V.: Amsterdam, The Netherlands, 2007; Volume 3, pp. 331–426. [Google Scholar] [CrossRef] [Green Version]
  32. Barbosa, L.S. Components as Coalgebras. Ph.D. Thesis, Universidade do Minho, Braga, Portugal, 2001. [Google Scholar]
  33. Guilherme, R.J.P. A Coalgebraic Approach to Fuzzy Automata. Ph.D. Thesis, Universidade Nova De Lisboa, Lisbon, Portugal, 2016. [Google Scholar]
  34. Wu, H.; Chen, Y. Coalgebras for Fuzzy Transition Systems. Electron. Notes Theor. Comput. Sci. 2014, 301, 91–101. [Google Scholar] [CrossRef] [Green Version]
  35. Wu, H.; Chen, Y.; Bu, T.; Deng, Y. Algorithmic and logical characterizations of bisimulations for non-deterministic fuzzy transition systems. Fuzzy Sets Syst. 2018, 333, 106–123. [Google Scholar] [CrossRef]
  36. Wu, H.; Chen, T.; Han, T.; Chen, Y. Bisimulations for fuzzy transition systems revisited. Int. J. Approx. Reason. 2018, 99, 1–11. [Google Scholar] [CrossRef] [Green Version]
  37. Nikravesh, M.; Kacprzyk, J.; Zadeh, L.A. Forging New Frontiers: Fuzzy Pioneers I; University of California: Berkeley, CA, USA, 2007. [Google Scholar]
  38. Meng, S.; Barbosa, L.S. Components as coalgebras: The refinement dimension. Theor. Comput. Sci. 2006, 351, 276–294. [Google Scholar] [CrossRef] [Green Version]
  39. Narasimha, M.; Cleaveland, R.; Iyer, S.P. The role of observations in probabilistic open systems. Electr. Notes Theor. Comput. Sci. 1999, 25, 133–144. [Google Scholar] [CrossRef] [Green Version]
Figure 1. The graphs of membership functions.
Figure 1. The graphs of membership functions.
Mathematics 09 00272 g001
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Liu, A.; Wang, S.; Barbosa, L.S.; Sun, M. Fuzzy Automata as Coalgebras. Mathematics 2021, 9, 272. https://0-doi-org.brum.beds.ac.uk/10.3390/math9030272

AMA Style

Liu A, Wang S, Barbosa LS, Sun M. Fuzzy Automata as Coalgebras. Mathematics. 2021; 9(3):272. https://0-doi-org.brum.beds.ac.uk/10.3390/math9030272

Chicago/Turabian Style

Liu, Ai, Shun Wang, Luis Soares Barbosa, and Meng Sun. 2021. "Fuzzy Automata as Coalgebras" Mathematics 9, no. 3: 272. https://0-doi-org.brum.beds.ac.uk/10.3390/math9030272

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop