69 System . err . println ( **" E r r o r : : "+t h i s** . getClass **( ) .** getName **( ) +**
70 " . r e f e r e e F u n c t i o n ( A r r ay L i s t<Ass ignment<Prop>>,A r r ayL i s t<B>)" ) ;
71 System . err . println ( " E r r o r : : a s s i g n I n i s n u l l " ) ; 72 System . exit **( 0 ) ;**
73 }
74 i f ( assignIn . size **( ) <1) {**
75 System . err . println ( **" E r r o r : : "+t h i s** . getClass **( ) .** getName **( ) +**
76 " . r e f e r e e F u n c t i o n ( A r r ay L i s t<Ass ignment<Prop>>,A r r ayL i s t<B>)" ) ;
77 System . err . println ( " E r r o r : : a s s i g n I n i s empty " ) ;
78 System . exit **( 0 ) ;**
79 }
80 81 **i n t** i ;
82 ArrayList <Assignment <Prop>> arbitrament**=new** ArrayList <Assignment <Prop **>>() ;**
83 Assignment <Prop> finalAssignment = new Assignment <Prop **>() ;** 84 Prop fusedPropConj=assignIn . get **( 0 ) .** attribute . clone **( ) ;**
85 Prop fusedPropDisj=fusedPropConj . instanceNsize **( ) .** zero **( ) ;**
86 finalAssignment . value **= 1 . ;** 87 f o r ( i=1;i<assignIn . size ( ) ; i++) fusedPropConj . and ( fusedPropConj , assignIn .←֓
get ( i ) . attribute ) ;
88 i f ( fusedPropConj . compareTo ( fusedPropDisj **)==0) {**
89 f o r ( i=0;i<assignIn . size ( ) ; i++) fusedPropDisj . or ( fusedPropDisj , assignIn←֓
. get ( i ) . attribute ) ;
90 finalAssignment . attribute=fusedPropDisj ;
91 } **e l s e** finalAssignment . attribute=fusedPropConj ;
92 arbitrament . add ( finalAssignment ) ; 93 **r e t u r n** arbitrament ;
94 }
95 96 }