Snapshot Isolation Anomalies Detection in Software Transactional Memory