// ************************************************************************** //
//                                                                            //
//    eses                   eses                                             //
//   eses                     eses                                            //
//  eses    eseses  esesese    eses   Embedded Systems Group                  //
//  ese    ese  ese ese         ese                                           //
//  ese    eseseses eseseses    ese   Department of Computer Science          //
//  eses   eses          ese   eses                                           //
//   eses   eseses  eseseses  eses    University of Kaiserslautern            //
//    eses                   eses                                             //
//                                                                            //
// ************************************************************************** //


[2][2]bool m;
[2][2]bool t;
thread TransHull {
    bool t_1,t_2,t_3,t_4;
    t_1 = m[0][0];
    t_2 = m[0][1];
    t_3 = m[1][0];
    t_4 = m[1][1];
    t_1 = t_1 | t_1 & t_1;
    t_2 = t_2 | t_1 & t_2;
    t_3 = t_3 | t_3 & t_1;
    t_4 = t_4 | t_3 & t_2;
    t_1 = t_1 | t_2 & t_3;
    t_2 = t_2 | t_2 & t_4;
    t_3 = t_3 | t_4 & t_3;
    t_4 = t_4 | t_4 & t_4;
    t[0][0] = t_1;
    t[0][1] = t_2;
    t[1][0] = t_3;
    t[1][1] = t_4;
}