private static boolean canEliminateLop(Lop node,ArrayList<Lop> execNodes){
  if (!node.isAligner())   return false;
  int ret=getChildAlignment(node,execNodes,ExecLocation.MapAndReduce);
  if (ret == CHILD_BREAKS_ALIGNMENT)   return false;
 else   if (ret == CHILD_DOES_NOT_BREAK_ALIGNMENT)   return true;
 else   if (ret == MRCHILD_NOT_FOUND)   return false;
 else   if (ret == MR_CHILD_FOUND_BREAKS_ALIGNMENT)   return false;
 else   if (ret == MR_CHILD_FOUND_DOES_NOT_BREAK_ALIGNMENT)   return true;
 else   throw new RuntimeException("Should not happen. \n");
}

private static boolean canEliminateLop ( Lop node , ArrayList < Lop > execNodes ) { if ( ! node . isAligner ( ) ) return false ; int ret = getChildAlignment ( node , execNodes , ExecLocation . MapAndReduce ) ; if ( ret == CHILD_BREAKS_ALIGNMENT ) return false ; else if ( ret == CHILD_DOES_NOT_BREAK_ALIGNMENT ) return true ; else if ( ret == MRCHILD_NOT_FOUND ) return false ; else if ( ret == MR_CHILD_FOUND_BREAKS_ALIGNMENT ) return false ; else if ( ret == MR_CHILD_FOUND_DOES_NOT_BREAK_ALIGNMENT ) return true ; else throw new RuntimeException ( "Should not happen. \n" ) ; }
method to check if a lop can be eliminated from checking
