***********************************************************************
*
* RSTHM.dgibi
*
* Random Set Theory analysis with three trivial analytic functions
*  @PA(A,B,C,D) ==>  A      + (B*C*D)
*  @PB(A,B,C,D) ==> (A*B)   + (C*D)
*  @PC(A,B,C,D) ==> (A*B*D) +  D
*
***********************************************************************


GRAPH = VRAI ;
'OPTI' 'TRAC' 'PSC';
'OPTI' 'EPTR' 4 ;


'DEBP'  @PA  R*'TABLE' ;
*  Analytical Function @PA
  !RV =  R.'A'.'VN' + (R.'B'.'VN' * R.'C'.'VN' * R.'D'.'VN') ;
'FINP'  !RV ;

'DEBP'  @PB  R*'TABLE' ;
*  Analytical Function @PB
  !RV = (R.'A'.'VN' * R.'B'.'VN') + (R.'C'.'VN' * R.'D'.'VN') ;
'FINP'  !RV ;

'DEBP'  @PC  R*'TABLE' ;
*  Analytical Function @PC
  !RV = (R.'A'.'VN' * R.'B'.'VN' * R.'C'.'VN') + R.'D'.'VN'  ;
'FINP'  !RV ;


RS  = OBJET @RSTH ;
RA  ='TABL';

RA.'A'        ='TABL';
RA.'A'.'MIN'  ='PROG' 1.1 1.2 1.3 ;
RA.'A'.'MAX'  ='PROG' 1.4 1.5 1.6 ;
RA.'A'.'CPB'  ='PROG' 0.1 0.5 0.4 ;
RA.'A'.'MINS' = RS%'SCV'  RA.'A'.'MIN' ;
RA.'A'.'MAXS' = RS%'SCV'  RA.'A'.'MAX' ;
RA.'A'.'CPBS' = RS%'SCS'  RA.'A'.'CPB' ;

EAN = ('EVOL' 'BOUT' 'MANU'  'MIN'  RA.'A'.'MINS'  'CPB'  RA.'A'.'CPBS' ) ;
EAX = ('EVOL' 'BRIQ' 'MANU'  'MAX'  RA.'A'.'MAXS'  'CPB'  RA.'A'.'CPBS' ) ;


RA.'B'        ='TABL';
RA.'B'.'MIN'  ='PROG' 3.1 3.2 ;
RA.'B'.'MAX'  ='PROG' 3.3 3.4 ;
RA.'B'.'CPB'  ='PROG' 0.2 0.8 ;
RA.'B'.'MINS' = RS%'SCV'  RA.'B'.'MIN' ;
RA.'B'.'MAXS' = RS%'SCV'  RA.'B'.'MAX' ;
RA.'B'.'CPBS' = RS%'SCS'  RA.'B'.'CPB' ;

EBN = ('EVOL' 'BOUT' 'MANU'  'MIN'  RA.'B'.'MINS'  'CPB'  RA.'B'.'CPBS' ) ;
EBX = ('EVOL' 'BRIQ' 'MANU'  'MAX'  RA.'B'.'MAXS'  'CPB'  RA.'B'.'CPBS' ) ;


RA.'C'        ='TABL';
RA.'C'.'MIN'  ='PROG' 5.1 5.2 5.3 ;
RA.'C'.'MAX'  ='PROG' 5.4 5.5 5.6 ;
RA.'C'.'CPB'  ='PROG' 0.3 0.3 0.4 ;
RA.'C'.'MINS' = RS%'SCV'  RA.'C'.'MIN' ;
RA.'C'.'MAXS' = RS%'SCV'  RA.'C'.'MAX' ;
RA.'C'.'CPBS' = RS%'SCS'  RA.'C'.'CPB' ;

ECN = ('EVOL' 'BOUT' 'MANU'  'MIN'  RA.'C'.'MINS'  'CPB'  RA.'C'.'CPBS' ) ;
ECX = ('EVOL' 'BRIQ' 'MANU'  'MAX'  RA.'C'.'MAXS'  'CPB'  RA.'C'.'CPBS' ) ;


RA.'D'        ='TABL';
RA.'D'.'MIN'  ='PROG' 7.1 7.2 7.3 7.4;
RA.'D'.'MAX'  ='PROG' 7.5 7.6 7.7 7.8;
RA.'D'.'CPB'  ='PROG' 0.3 0.2 0.3 0.2;
RA.'D'.'MINS' = RS%'SCV'  RA.'D'.'MIN' ;
RA.'D'.'MAXS' = RS%'SCV'  RA.'D'.'MAX' ;
RA.'D'.'CPBS' = RS%'SCS'  RA.'D'.'CPB' ;

EDN = ('EVOL' 'BOUT' 'MANU'  'MIN'  RA.'D'.'MINS'  'CPB'  RA.'D'.'CPBS' ) ;
EDX = ('EVOL' 'BRIQ' 'MANU'  'MAX'  RA.'D'.'MAXS'  'CPB'  RA.'D'.'CPBS' ) ;


RB     ='TABL';
RB.'A' = RA.'A';
RB.'B' = RA.'B';
RB.'C' = RA.'C';
RB.'D' = RA.'D';


RC     ='TABL';
RC.'A' = RA.'A';
RC.'B' = RA.'B';
RC.'C' = RA.'C';
RC.'D' = RA.'D';


RSA = OBJET @RSTH ;
RSB = OBJET @RSTH ;
RSC = OBJET @RSTH ;


RSA%RST RA ;
RSB%RST RB ;
RSC%RST RC ;


JX = RA.'A'.'CX' ;

'REPE' J JX ;
  RSA%'RSV'  &J  0 ;
  RVA = @PA RA ;
  RSA%'RSR'  RVA  &J ;
  RSB%'RSV'  &J  0 ;
  RVB = @PB RB ;
  RSB%'RSR'  RVB  &J ;
  RSC%'RSV'  &J  0 ;
  RVC = @PC RC ;
  RSC%'RSR'  RVC  &J ;
'FIN' J ;


'SI' GRAPH ;
 'DESS' ( EAN 'ET' EAX )
  'TITX' 'Value A [1]'
  'POSX' 'CENT'
  'XBOR'   0.0    2.0
  'XGRA'   0.2
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
 'DESS' ( EBN 'ET' EBX )
  'TITX' 'Value B [1]'
  'POSX' 'CENT'
  'XBOR'   2.0    4.0
  'XGRA'   0.2
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
 'DESS' ( ECN 'ET' ECX )
  'TITX' 'Value C [1]'
  'POSX' 'CENT'
  'XBOR'   4.0    6.0
  'XGRA'   0.2
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
 'DESS' ( EDN 'ET' EDX )
  'TITX' 'Value D [1]'
  'POSX' 'CENT'
  'XBOR'   6.0    8.0
  'XGRA'   0.2
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
 'DESS' ( RSA.'RT'.'EN' 'ET' RSA.'RT'.'EX' )
  'TITX' 'Function PA [1]'
  'POSX' 'CENT'
  'XBOR'  110.0  160.0
  'XGRA'    5.0
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
 'DESS' ( RSB.'RT'.'EN' 'ET' RSB.'RT'.'EX' )
  'TITX' 'Function PB [1]'
  'POSX' 'CENT'
  'XBOR'  30.0   60.0
  'XGRA'   3.0
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
 'DESS' ( RSC.'RT'.'EN' 'ET' RSC.'RT'.'EX' )
  'TITX' 'Function PC [1]'
  'POSX' 'CENT'
  'XBOR'  20.0   40.0
  'XGRA'   2.0
  'TITY' 'CPB [1]'
  'POSY' 'CENT'
  'YBOR'   0.0    1.0
  'YGRA'   0.1
  'TITR' 'Random Set Theory - Analytical computation'
  'GRIL' 'POIN' 'GRIS' ;
'FINS' ;

'FIN' ;
 

