:: Basic Properties of Rough Sets and Rough Membership Function
:: by Adam Grabowski
::
:: Received November 23, 2003
:: Copyright (c) 2003-2021 Association of Mizar Users
registration
let
A
be
set
;
cluster
RelStr
(#
A
,
(
id
A
)
#)
->
discrete
;
coherence
RelStr
(#
A
,
(
id
A
)
#) is
discrete
by
ORDERS_3:def 1
;
end;
theorem
Th1
:
:: ROUGHS_1:1
for
X
being
set
st
Total
X
c=
id
X
holds
X
is
trivial
proof
end;
definition
let
A
be
RelStr
;
attr
A
is
diagonal
means
:
Def1
:
:: ROUGHS_1:def 1
the
InternalRel
of
A
c=
id
the
carrier
of
A
;
end;
::
deftheorem
Def1
defines
diagonal
ROUGHS_1:def 1 :
for
A
being
RelStr
holds
(
A
is
diagonal
iff the
InternalRel
of
A
c=
id
the
carrier
of
A
);
registration
let
A
be non
trivial
set
;
cluster
RelStr
(#
A
,
(
Total
A
)
#)
->
non
diagonal
;
coherence
not
RelStr
(#
A
,
(
Total
A
)
#) is
diagonal
by
Th1
;
end;
theorem
:: ROUGHS_1:2
for
L
being
reflexive
RelStr
holds
id
the
carrier
of
L
c=
the
InternalRel
of
L
proof
end;
Lm1
:
for
A
being
RelStr
st
A
is
reflexive
&
A
is
trivial
holds
A
is
discrete
proof
end;
registration
cluster
reflexive
non
discrete
->
non
trivial
reflexive
for
RelStr
;
coherence
for
b
1
being
reflexive
RelStr
st not
b
1
is
discrete
holds
not
b
1
is
trivial
by
Lm1
;
cluster
trivial
reflexive
->
discrete
for
RelStr
;
coherence
for
b
1
being
RelStr
st
b
1
is
reflexive
&
b
1
is
trivial
holds
b
1
is
discrete
;
end;
theorem
:: ROUGHS_1:3
for
X
being
set
for
R
being
Relation
of
X
holds
( (
R
is
total
&
R
is
reflexive
) iff
id
X
c=
R
)
proof
end;
Lm2
:
for
A
being
RelStr
st
A
is
discrete
holds
A
is
diagonal
by
ORDERS_3:def 1
;
registration
cluster
discrete
->
diagonal
for
RelStr
;
coherence
for
b
1
being
RelStr
st
b
1
is
discrete
holds
b
1
is
diagonal
by
Lm2
;
cluster
non
diagonal
->
non
discrete
for
RelStr
;
coherence
for
b
1
being
RelStr
st not
b
1
is
diagonal
holds
not
b
1
is
discrete
;
end;
registration
cluster
non
empty
non
diagonal
for
RelStr
;
existence
ex
b
1
being
RelStr
st
( not
b
1
is
diagonal
& not
b
1
is
empty
)
proof
end;
end;
theorem
Th4
:
:: ROUGHS_1:4
for
A
being non
empty
non
diagonal
RelStr
ex
x
,
y
being
Element
of
A
st
(
x
<>
y
&
[
x
,
y
]
in
the
InternalRel
of
A
)
proof
end;
theorem
Th5
:
:: ROUGHS_1:5
for
D
being
set
for
p
,
q
being
FinSequence
of
D
holds
Union
(
p
^
q
)
=
(
Union
p
)
\/
(
Union
q
)
proof
end;
theorem
Th6
:
:: ROUGHS_1:6
for
p
,
q
being
Function
st
q
is
disjoint_valued
&
p
c=
q
holds
p
is
disjoint_valued
proof
end;
registration
cluster
empty
Relation-like
Function-like
->
disjoint_valued
for
set
;
coherence
for
b
1
being
Function
st
b
1
is
empty
holds
b
1
is
disjoint_valued
proof
end;
end;
registration
let
A
be
set
;
cluster
Relation-like
NAT
-defined
A
-valued
Function-like
finite
disjoint_valued
FinSequence-like
FinSubsequence-like
for
FinSequence
of
A
;
existence
ex
b
1
being
FinSequence
of
A
st
b
1
is
disjoint_valued
proof
end;
end;
registration
let
A
be non
empty
set
;
cluster
non
empty
Relation-like
NAT
-defined
A
-valued
Function-like
finite
disjoint_valued
FinSequence-like
FinSubsequence-like
for
FinSequence
of
A
;
existence
ex
b
1
being
FinSequence
of
A
st
( not
b
1
is
empty
&
b
1
is
disjoint_valued
)
proof
end;
end;
definition
let
A
be
set
;
let
X
be
FinSequence
of
bool
A
;
let
n
be
Nat
;
:: original:
.
redefine
func
X
.
n
->
Subset
of
A
;
coherence
X
.
n
is
Subset
of
A
proof
end;
end;
definition
let
A
be
set
;
let
X
be
FinSequence
of
bool
A
;
:: original:
Union
redefine
func
Union
X
->
Subset
of
A
;
coherence
Union
X
is
Subset
of
A
proof
end;
end;
registration
let
A
be
finite
set
;
let
R
be
Relation
of
A
;
cluster
RelStr
(#
A
,
R
#)
->
finite
;
coherence
RelStr
(#
A
,
R
#) is
finite
;
end;
theorem
Th7
:
:: ROUGHS_1:7
for
X
being
set
for
x
,
y
being
object
for
T
being
Tolerance
of
X
st
x
in
Class
(
T
,
y
) holds
y
in
Class
(
T
,
x
)
proof
end;
definition
let
P
be
RelStr
;
attr
P
is
with_equivalence
means
:
Def2
:
:: ROUGHS_1:def 2
the
InternalRel
of
P
is
Equivalence_Relation
of the
carrier
of
P
;
attr
P
is
with_tolerance
means
:
Def3
:
:: ROUGHS_1:def 3
the
InternalRel
of
P
is
Tolerance
of the
carrier
of
P
;
end;
::
deftheorem
Def2
defines
with_equivalence
ROUGHS_1:def 2 :
for
P
being
RelStr
holds
(
P
is
with_equivalence
iff the
InternalRel
of
P
is
Equivalence_Relation
of the
carrier
of
P
);
::
deftheorem
Def3
defines
with_tolerance
ROUGHS_1:def 3 :
for
P
being
RelStr
holds
(
P
is
with_tolerance
iff the
InternalRel
of
P
is
Tolerance
of the
carrier
of
P
);
registration
cluster
with_equivalence
->
with_tolerance
for
RelStr
;
coherence
for
b
1
being
RelStr
st
b
1
is
with_equivalence
holds
b
1
is
with_tolerance
;
end;
registration
let
A
be
set
;
cluster
RelStr
(#
A
,
(
id
A
)
#)
->
with_equivalence
;
coherence
RelStr
(#
A
,
(
id
A
)
#) is
with_equivalence
;
end;
registration
cluster
non
empty
finite
discrete
with_equivalence
for
RelStr
;
existence
ex
b
1
being
RelStr
st
(
b
1
is
discrete
&
b
1
is
finite
&
b
1
is
with_equivalence
& not
b
1
is
empty
)
proof
end;
cluster
non
empty
finite
non
diagonal
with_equivalence
for
RelStr
;
existence
ex
b
1
being
RelStr
st
( not
b
1
is
diagonal
&
b
1
is
finite
&
b
1
is
with_equivalence
& not
b
1
is
empty
)
proof
end;
end;
definition
mode
Approximation_Space
is
non
empty
with_equivalence
RelStr
;
mode
Tolerance_Space
is
non
empty
with_tolerance
RelStr
;
end;
registration
let
A
be
Tolerance_Space
;
cluster
the
InternalRel
of
A
->
reflexive
symmetric
total
;
coherence
( the
InternalRel
of
A
is
total
& the
InternalRel
of
A
is
reflexive
& the
InternalRel
of
A
is
symmetric
)
by
Def3
;
end;
registration
let
A
be
Approximation_Space
;
cluster
the
InternalRel
of
A
->
transitive
;
coherence
the
InternalRel
of
A
is
transitive
by
Def2
;
end;
definition
let
A
be non
empty
RelStr
;
let
X
be
Subset
of
A
;
func
LAp
X
->
Subset
of
A
equals
:: ROUGHS_1:def 4
{
x
where
x
is
Element
of
A
:
Class
( the
InternalRel
of
A
,
x
)
c=
X
}
;
coherence
{
x
where
x
is
Element
of
A
:
Class
( the
InternalRel
of
A
,
x
)
c=
X
}
is
Subset
of
A
proof
end;
func
UAp
X
->
Subset
of
A
equals
:: ROUGHS_1:def 5
{
x
where
x
is
Element
of
A
:
Class
( the
InternalRel
of
A
,
x
)
meets
X
}
;
coherence
{
x
where
x
is
Element
of
A
:
Class
( the
InternalRel
of
A
,
x
)
meets
X
}
is
Subset
of
A
proof
end;
end;
::
deftheorem
defines
LAp
ROUGHS_1:def 4 :
for
A
being non
empty
RelStr
for
X
being
Subset
of
A
holds
LAp
X
=
{
x
where
x
is
Element
of
A
:
Class
( the
InternalRel
of
A
,
x
)
c=
X
}
;
::
deftheorem
defines
UAp
ROUGHS_1:def 5 :
for
A
being non
empty
RelStr
for
X
being
Subset
of
A
holds
UAp
X
=
{
x
where
x
is
Element
of
A
:
Class
( the
InternalRel
of
A
,
x
)
meets
X
}
;
definition
let
A
be non
empty
RelStr
;
let
X
be
Subset
of
A
;
func
BndAp
X
->
Subset
of
A
equals
:: ROUGHS_1:def 6
(
UAp
X
)
\
(
LAp
X
)
;
coherence
(
UAp
X
)
\
(
LAp
X
)
is
Subset
of
A
;
end;
::
deftheorem
defines
BndAp
ROUGHS_1:def 6 :
for
A
being non
empty
RelStr
for
X
being
Subset
of
A
holds
BndAp
X
=
(
UAp
X
)
\
(
LAp
X
)
;
definition
let
A
be non
empty
RelStr
;
let
X
be
Subset
of
A
;
attr
X
is
rough
means
:: ROUGHS_1:def 7
BndAp
X
<>
{}
;
end;
::
deftheorem
defines
rough
ROUGHS_1:def 7 :
for
A
being non
empty
RelStr
for
X
being
Subset
of
A
holds
(
X
is
rough
iff
BndAp
X
<>
{}
);
notation
let
A
be non
empty
RelStr
;
let
X
be
Subset
of
A
;
antonym
exact
X
for
rough
;
end;
theorem
Th8
:
:: ROUGHS_1:8
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
for
x
being
object
st
x
in
LAp
X
holds
Class
( the
InternalRel
of
A
,
x
)
c=
X
proof
end;
theorem
:: ROUGHS_1:9
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
st
Class
( the
InternalRel
of
A
,
x
)
c=
X
holds
x
in
LAp
X
;
theorem
Th10
:
:: ROUGHS_1:10
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
for
x
being
set
st
x
in
UAp
X
holds
Class
( the
InternalRel
of
A
,
x
)
meets
X
proof
end;
theorem
:: ROUGHS_1:11
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
st
Class
( the
InternalRel
of
A
,
x
)
meets
X
holds
x
in
UAp
X
;
theorem
Th12
:
:: ROUGHS_1:12
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
LAp
X
c=
X
proof
end;
theorem
Th13
:
:: ROUGHS_1:13
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
X
c=
UAp
X
proof
end;
theorem
Th14
:
:: ROUGHS_1:14
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
LAp
X
c=
UAp
X
proof
end;
theorem
Th15
:
:: ROUGHS_1:15
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
(
X
is
exact
iff
LAp
X
=
X
)
proof
end;
theorem
Th16
:
:: ROUGHS_1:16
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
(
X
is
exact
iff
UAp
X
=
X
)
proof
end;
theorem
:: ROUGHS_1:17
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
(
X
=
LAp
X
iff
X
=
UAp
X
)
by
Th15
,
Th16
;
theorem
Th18
:
:: ROUGHS_1:18
for
A
being
Tolerance_Space
holds
LAp
(
{}
A
)
=
{}
proof
end;
theorem
Th19
:
:: ROUGHS_1:19
for
A
being
Tolerance_Space
holds
UAp
(
{}
A
)
=
{}
proof
end;
theorem
Th20
:
:: ROUGHS_1:20
for
A
being
Tolerance_Space
holds
LAp
(
[#]
A
)
=
[#]
A
proof
end;
theorem
:: ROUGHS_1:21
for
A
being
Tolerance_Space
holds
UAp
(
[#]
A
)
=
[#]
A
proof
end;
theorem
:: ROUGHS_1:22
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
LAp
(
X
/\
Y
)
=
(
LAp
X
)
/\
(
LAp
Y
)
proof
end;
theorem
:: ROUGHS_1:23
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
UAp
(
X
\/
Y
)
=
(
UAp
X
)
\/
(
UAp
Y
)
proof
end;
theorem
Th24
:
:: ROUGHS_1:24
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
st
X
c=
Y
holds
LAp
X
c=
LAp
Y
proof
end;
theorem
Th25
:
:: ROUGHS_1:25
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
st
X
c=
Y
holds
UAp
X
c=
UAp
Y
proof
end;
theorem
:: ROUGHS_1:26
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
LAp
X
)
\/
(
LAp
Y
)
c=
LAp
(
X
\/
Y
)
proof
end;
theorem
:: ROUGHS_1:27
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
UAp
(
X
/\
Y
)
c=
(
UAp
X
)
/\
(
UAp
Y
)
proof
end;
theorem
Th28
:
:: ROUGHS_1:28
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
LAp
(
X
`
)
=
(
UAp
X
)
`
proof
end;
theorem
Th29
:
:: ROUGHS_1:29
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
UAp
(
X
`
)
=
(
LAp
X
)
`
proof
end;
theorem
:: ROUGHS_1:30
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
UAp
(
LAp
(
UAp
X
)
)
=
UAp
X
proof
end;
theorem
:: ROUGHS_1:31
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
LAp
(
UAp
(
LAp
X
)
)
=
LAp
X
proof
end;
theorem
:: ROUGHS_1:32
for
A
being
Tolerance_Space
for
X
being
Subset
of
A
holds
BndAp
X
=
BndAp
(
X
`
)
proof
end;
theorem
:: ROUGHS_1:33
for
A
being
Approximation_Space
for
X
being
Subset
of
A
holds
LAp
(
LAp
X
)
=
LAp
X
proof
end;
theorem
Th34
:
:: ROUGHS_1:34
for
A
being
Approximation_Space
for
X
being
Subset
of
A
holds
LAp
(
LAp
X
)
=
UAp
(
LAp
X
)
proof
end;
theorem
:: ROUGHS_1:35
for
A
being
Approximation_Space
for
X
being
Subset
of
A
holds
UAp
(
UAp
X
)
=
UAp
X
proof
end;
theorem
Th36
:
:: ROUGHS_1:36
for
A
being
Approximation_Space
for
X
being
Subset
of
A
holds
UAp
(
UAp
X
)
=
LAp
(
UAp
X
)
proof
end;
registration
let
A
be
Tolerance_Space
;
cluster
exact
for
Element
of
bool
the
carrier
of
A
;
existence
ex
b
1
being
Subset
of
A
st
b
1
is
exact
proof
end;
end;
registration
let
A
be
Approximation_Space
;
let
X
be
Subset
of
A
;
cluster
LAp
X
->
exact
;
coherence
not
LAp
X
is
rough
proof
end;
cluster
UAp
X
->
exact
;
coherence
not
UAp
X
is
rough
proof
end;
end;
theorem
Th37
:
:: ROUGHS_1:37
for
A
being
Approximation_Space
for
X
being
Subset
of
A
for
x
,
y
being
set
st
x
in
UAp
X
&
[
x
,
y
]
in
the
InternalRel
of
A
holds
y
in
UAp
X
proof
end;
registration
let
A
be non
diagonal
Approximation_Space
;
cluster
rough
for
Element
of
bool
the
carrier
of
A
;
existence
ex
b
1
being
Subset
of
A
st
b
1
is
rough
proof
end;
end;
definition
let
A
be
Approximation_Space
;
let
X
be
Subset
of
A
;
mode
RoughSet
of
X
->
set
means
:: ROUGHS_1:def 8
it
=
[
(
LAp
X
)
,
(
UAp
X
)
]
;
existence
ex
b
1
being
set
st
b
1
=
[
(
LAp
X
)
,
(
UAp
X
)
]
;
end;
::
deftheorem
defines
RoughSet
ROUGHS_1:def 8 :
for
A
being
Approximation_Space
for
X
being
Subset
of
A
for
b
3
being
set
holds
(
b
3
is
RoughSet
of
X
iff
b
3
=
[
(
LAp
X
)
,
(
UAp
X
)
]
);
registration
let
A
be
finite
Tolerance_Space
;
let
x
be
Element
of
A
;
cluster
card
(
Class
( the
InternalRel
of
A
,
x
)
)
->
non
empty
;
coherence
not
card
(
Class
( the
InternalRel
of
A
,
x
)
)
is
empty
proof
end;
end;
definition
let
A
be
finite
Tolerance_Space
;
let
X
be
Subset
of
A
;
func
MemberFunc
(
X
,
A
)
->
Function
of the
carrier
of
A
,
REAL
means
:
Def9
:
:: ROUGHS_1:def 9
for
x
being
Element
of
A
holds
it
.
x
=
(
card
(
X
/\
(
Class
( the
InternalRel
of
A
,
x
)
)
)
)
/
(
card
(
Class
( the
InternalRel
of
A
,
x
)
)
)
;
existence
ex
b
1
being
Function
of the
carrier
of
A
,
REAL
st
for
x
being
Element
of
A
holds
b
1
.
x
=
(
card
(
X
/\
(
Class
( the
InternalRel
of
A
,
x
)
)
)
)
/
(
card
(
Class
( the
InternalRel
of
A
,
x
)
)
)
proof
end;
uniqueness
for
b
1
,
b
2
being
Function
of the
carrier
of
A
,
REAL
st ( for
x
being
Element
of
A
holds
b
1
.
x
=
(
card
(
X
/\
(
Class
( the
InternalRel
of
A
,
x
)
)
)
)
/
(
card
(
Class
( the
InternalRel
of
A
,
x
)
)
)
) & ( for
x
being
Element
of
A
holds
b
2
.
x
=
(
card
(
X
/\
(
Class
( the
InternalRel
of
A
,
x
)
)
)
)
/
(
card
(
Class
( the
InternalRel
of
A
,
x
)
)
)
) holds
b
1
=
b
2
proof
end;
end;
::
deftheorem
Def9
defines
MemberFunc
ROUGHS_1:def 9 :
for
A
being
finite
Tolerance_Space
for
X
being
Subset
of
A
for
b
3
being
Function
of the
carrier
of
A
,
REAL
holds
(
b
3
=
MemberFunc
(
X
,
A
) iff for
x
being
Element
of
A
holds
b
3
.
x
=
(
card
(
X
/\
(
Class
( the
InternalRel
of
A
,
x
)
)
)
)
/
(
card
(
Class
( the
InternalRel
of
A
,
x
)
)
)
);
theorem
Th38
:
:: ROUGHS_1:38
for
A
being
finite
Tolerance_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
holds
(
0
<=
(
MemberFunc
(
X
,
A
)
)
.
x
&
(
MemberFunc
(
X
,
A
)
)
.
x
<=
1 )
proof
end;
theorem
:: ROUGHS_1:39
for
A
being
finite
Tolerance_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
holds
(
MemberFunc
(
X
,
A
)
)
.
x
in
[.
0
,1
.]
proof
end;
theorem
Th40
:
:: ROUGHS_1:40
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
holds
(
(
MemberFunc
(
X
,
A
)
)
.
x
=
1 iff
x
in
LAp
X
)
proof
end;
theorem
Th41
:
:: ROUGHS_1:41
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
holds
(
(
MemberFunc
(
X
,
A
)
)
.
x
=
0
iff
x
in
(
UAp
X
)
`
)
proof
end;
theorem
Th42
:
:: ROUGHS_1:42
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
holds
( (
0
<
(
MemberFunc
(
X
,
A
)
)
.
x
&
(
MemberFunc
(
X
,
A
)
)
.
x
<
1 ) iff
x
in
BndAp
X
)
proof
end;
theorem
Th43
:
:: ROUGHS_1:43
for
A
being
discrete
Approximation_Space
for
X
being
Subset
of
A
holds
X
is
exact
proof
end;
registration
let
A
be
discrete
Approximation_Space
;
cluster
->
exact
for
Element
of
bool
the
carrier
of
A
;
coherence
for
b
1
being
Subset
of
A
holds
b
1
is
exact
by
Th43
;
end;
theorem
:: ROUGHS_1:44
for
A
being
finite
discrete
Approximation_Space
for
X
being
Subset
of
A
holds
MemberFunc
(
X
,
A
)
=
chi
(
X
, the
carrier
of
A
)
proof
end;
theorem
:: ROUGHS_1:45
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
for
x
,
y
being
set
st
[
x
,
y
]
in
the
InternalRel
of
A
holds
(
MemberFunc
(
X
,
A
)
)
.
x
=
(
MemberFunc
(
X
,
A
)
)
.
y
proof
end;
theorem
:: ROUGHS_1:46
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
for
x
being
Element
of
A
holds
(
MemberFunc
(
(
X
`
)
,
A
)
)
.
x
=
1
-
(
(
MemberFunc
(
X
,
A
)
)
.
x
)
proof
end;
theorem
Th47
:
:: ROUGHS_1:47
for
A
being
finite
Approximation_Space
for
X
,
Y
being
Subset
of
A
for
x
being
Element
of
A
st
X
c=
Y
holds
(
MemberFunc
(
X
,
A
)
)
.
x
<=
(
MemberFunc
(
Y
,
A
)
)
.
x
proof
end;
theorem
:: ROUGHS_1:48
for
A
being
finite
Approximation_Space
for
X
,
Y
being
Subset
of
A
for
x
being
Element
of
A
holds
(
MemberFunc
(
(
X
\/
Y
)
,
A
)
)
.
x
>=
(
MemberFunc
(
X
,
A
)
)
.
x
by
Th47
,
XBOOLE_1:7
;
theorem
:: ROUGHS_1:49
for
A
being
finite
Approximation_Space
for
X
,
Y
being
Subset
of
A
for
x
being
Element
of
A
holds
(
MemberFunc
(
(
X
/\
Y
)
,
A
)
)
.
x
<=
(
MemberFunc
(
X
,
A
)
)
.
x
by
Th47
,
XBOOLE_1:17
;
theorem
:: ROUGHS_1:50
for
A
being
finite
Approximation_Space
for
X
,
Y
being
Subset
of
A
for
x
being
Element
of
A
holds
(
MemberFunc
(
(
X
\/
Y
)
,
A
)
)
.
x
>=
max
(
(
(
MemberFunc
(
X
,
A
)
)
.
x
)
,
(
(
MemberFunc
(
Y
,
A
)
)
.
x
)
)
proof
end;
theorem
Th51
:
:: ROUGHS_1:51
for
A
being
finite
Approximation_Space
for
X
,
Y
being
Subset
of
A
for
x
being
Element
of
A
st
X
misses
Y
holds
(
MemberFunc
(
(
X
\/
Y
)
,
A
)
)
.
x
=
(
(
MemberFunc
(
X
,
A
)
)
.
x
)
+
(
(
MemberFunc
(
Y
,
A
)
)
.
x
)
proof
end;
theorem
:: ROUGHS_1:52
for
A
being
finite
Approximation_Space
for
X
,
Y
being
Subset
of
A
for
x
being
Element
of
A
holds
(
MemberFunc
(
(
X
/\
Y
)
,
A
)
)
.
x
<=
min
(
(
(
MemberFunc
(
X
,
A
)
)
.
x
)
,
(
(
MemberFunc
(
Y
,
A
)
)
.
x
)
)
proof
end;
definition
let
A
be
finite
Tolerance_Space
;
let
X
be
FinSequence
of
bool
the
carrier
of
A
;
let
x
be
Element
of
A
;
func
FinSeqM
(
x
,
X
)
->
FinSequence
of
REAL
means
:
Def10
:
:: ROUGHS_1:def 10
(
dom
it
=
dom
X
& ( for
n
being
Nat
st
n
in
dom
X
holds
it
.
n
=
(
MemberFunc
(
(
X
.
n
)
,
A
)
)
.
x
) );
existence
ex
b
1
being
FinSequence
of
REAL
st
(
dom
b
1
=
dom
X
& ( for
n
being
Nat
st
n
in
dom
X
holds
b
1
.
n
=
(
MemberFunc
(
(
X
.
n
)
,
A
)
)
.
x
) )
proof
end;
uniqueness
for
b
1
,
b
2
being
FinSequence
of
REAL
st
dom
b
1
=
dom
X
& ( for
n
being
Nat
st
n
in
dom
X
holds
b
1
.
n
=
(
MemberFunc
(
(
X
.
n
)
,
A
)
)
.
x
) &
dom
b
2
=
dom
X
& ( for
n
being
Nat
st
n
in
dom
X
holds
b
2
.
n
=
(
MemberFunc
(
(
X
.
n
)
,
A
)
)
.
x
) holds
b
1
=
b
2
proof
end;
end;
::
deftheorem
Def10
defines
FinSeqM
ROUGHS_1:def 10 :
for
A
being
finite
Tolerance_Space
for
X
being
FinSequence
of
bool
the
carrier
of
A
for
x
being
Element
of
A
for
b
4
being
FinSequence
of
REAL
holds
(
b
4
=
FinSeqM
(
x
,
X
) iff (
dom
b
4
=
dom
X
& ( for
n
being
Nat
st
n
in
dom
X
holds
b
4
.
n
=
(
MemberFunc
(
(
X
.
n
)
,
A
)
)
.
x
) ) );
theorem
Th53
:
:: ROUGHS_1:53
for
A
being
finite
Approximation_Space
for
X
being
FinSequence
of
bool
the
carrier
of
A
for
x
being
Element
of
A
for
y
being
Subset
of
A
holds
FinSeqM
(
x
,
(
X
^
<*
y
*>
)
)
=
(
FinSeqM
(
x
,
X
)
)
^
<*
(
(
MemberFunc
(
y
,
A
)
)
.
x
)
*>
proof
end;
theorem
Th54
:
:: ROUGHS_1:54
for
A
being
finite
Approximation_Space
for
x
being
Element
of
A
holds
(
MemberFunc
(
(
{}
A
)
,
A
)
)
.
x
=
0
proof
end;
theorem
:: ROUGHS_1:55
for
A
being
finite
Approximation_Space
for
x
being
Element
of
A
for
X
being
disjoint_valued
FinSequence
of
bool
the
carrier
of
A
holds
(
MemberFunc
(
(
Union
X
)
,
A
)
)
.
x
=
Sum
(
FinSeqM
(
x
,
X
)
)
proof
end;
theorem
:: ROUGHS_1:56
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
holds
LAp
X
=
{
x
where
x
is
Element
of
A
:
(
MemberFunc
(
X
,
A
)
)
.
x
=
1
}
proof
end;
theorem
:: ROUGHS_1:57
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
holds
UAp
X
=
{
x
where
x
is
Element
of
A
:
(
MemberFunc
(
X
,
A
)
)
.
x
>
0
}
proof
end;
theorem
:: ROUGHS_1:58
for
A
being
finite
Approximation_Space
for
X
being
Subset
of
A
holds
BndAp
X
=
{
x
where
x
is
Element
of
A
: (
0
<
(
MemberFunc
(
X
,
A
)
)
.
x
&
(
MemberFunc
(
X
,
A
)
)
.
x
<
1 )
}
proof
end;
definition
let
A
be
Tolerance_Space
;
let
X
,
Y
be
Subset
of
A
;
pred
X
_c=
Y
means
:: ROUGHS_1:def 11
LAp
X
c=
LAp
Y
;
reflexivity
for
X
being
Subset
of
A
holds
LAp
X
c=
LAp
X
;
pred
X
c=^
Y
means
:: ROUGHS_1:def 12
UAp
X
c=
UAp
Y
;
reflexivity
for
X
being
Subset
of
A
holds
UAp
X
c=
UAp
X
;
end;
::
deftheorem
defines
_c=
ROUGHS_1:def 11 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
_c=
Y
iff
LAp
X
c=
LAp
Y
);
::
deftheorem
defines
c=^
ROUGHS_1:def 12 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
c=^
Y
iff
UAp
X
c=
UAp
Y
);
definition
let
A
be
Tolerance_Space
;
let
X
,
Y
be
Subset
of
A
;
pred
X
_c=^
Y
means
:: ROUGHS_1:def 13
(
X
_c=
Y
&
X
c=^
Y
);
reflexivity
for
X
being
Subset
of
A
holds
(
X
_c=
X
&
X
c=^
X
)
;
end;
::
deftheorem
defines
_c=^
ROUGHS_1:def 13 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
_c=^
Y
iff (
X
_c=
Y
&
X
c=^
Y
) );
theorem
Th59
:
:: ROUGHS_1:59
for
A
being
Tolerance_Space
for
X
,
Y
,
Z
being
Subset
of
A
st
X
_c=
Y
&
Y
_c=
Z
holds
X
_c=
Z
proof
end;
theorem
Th60
:
:: ROUGHS_1:60
for
A
being
Tolerance_Space
for
X
,
Y
,
Z
being
Subset
of
A
st
X
c=^
Y
&
Y
c=^
Z
holds
X
c=^
Z
proof
end;
theorem
:: ROUGHS_1:61
for
A
being
Tolerance_Space
for
X
,
Y
,
Z
being
Subset
of
A
st
X
_c=^
Y
&
Y
_c=^
Z
holds
X
_c=^
Z
by
Th60
,
Th59
;
definition
let
A
be
Tolerance_Space
;
let
X
,
Y
be
Subset
of
A
;
pred
X
_=
Y
means
:: ROUGHS_1:def 14
LAp
X
=
LAp
Y
;
reflexivity
for
X
being
Subset
of
A
holds
LAp
X
=
LAp
X
;
symmetry
for
X
,
Y
being
Subset
of
A
st
LAp
X
=
LAp
Y
holds
LAp
Y
=
LAp
X
;
pred
X
=^
Y
means
:: ROUGHS_1:def 15
UAp
X
=
UAp
Y
;
reflexivity
for
X
being
Subset
of
A
holds
UAp
X
=
UAp
X
;
symmetry
for
X
,
Y
being
Subset
of
A
st
UAp
X
=
UAp
Y
holds
UAp
Y
=
UAp
X
;
pred
X
_=^
Y
means
:: ROUGHS_1:def 16
(
LAp
X
=
LAp
Y
&
UAp
X
=
UAp
Y
);
reflexivity
for
X
being
Subset
of
A
holds
(
LAp
X
=
LAp
X
&
UAp
X
=
UAp
X
)
;
symmetry
for
X
,
Y
being
Subset
of
A
st
LAp
X
=
LAp
Y
&
UAp
X
=
UAp
Y
holds
(
LAp
Y
=
LAp
X
&
UAp
Y
=
UAp
X
)
;
end;
::
deftheorem
defines
_=
ROUGHS_1:def 14 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
_=
Y
iff
LAp
X
=
LAp
Y
);
::
deftheorem
defines
=^
ROUGHS_1:def 15 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
=^
Y
iff
UAp
X
=
UAp
Y
);
::
deftheorem
defines
_=^
ROUGHS_1:def 16 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
_=^
Y
iff (
LAp
X
=
LAp
Y
&
UAp
X
=
UAp
Y
) );
definition
let
A
be
Tolerance_Space
;
let
X
,
Y
be
Subset
of
A
;
redefine
pred
X
_=
Y
means
:: ROUGHS_1:def 17
(
X
_c=
Y
&
Y
_c=
X
);
compatibility
(
X
_=
Y
iff (
X
_c=
Y
&
Y
_c=
X
) )
proof
end;
redefine
pred
X
=^
Y
means
:: ROUGHS_1:def 18
(
X
c=^
Y
&
Y
c=^
X
);
compatibility
(
X
=^
Y
iff (
X
c=^
Y
&
Y
c=^
X
) )
proof
end;
redefine
pred
X
_=^
Y
means
:: ROUGHS_1:def 19
(
X
_=
Y
&
X
=^
Y
);
compatibility
(
X
_=^
Y
iff (
X
_=
Y
&
X
=^
Y
) )
;
end;
::
deftheorem
defines
_=
ROUGHS_1:def 17 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
_=
Y
iff (
X
_c=
Y
&
Y
_c=
X
) );
::
deftheorem
defines
=^
ROUGHS_1:def 18 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
=^
Y
iff (
X
c=^
Y
&
Y
c=^
X
) );
::
deftheorem
defines
_=^
ROUGHS_1:def 19 :
for
A
being
Tolerance_Space
for
X
,
Y
being
Subset
of
A
holds
(
X
_=^
Y
iff (
X
_=
Y
&
X
=^
Y
) );