Skip to content

🐛 Exact SiDB simulator equivalence #651

Description

@wlambooy

fiction version

current

OS

All

Python version

No response

C++ compiler

No response

Additional environment information

No response

Description

On #390 , the equivalence_checking_exact_simulation.cpp experiment is adjusted so that it also compares ClusterComplete simulation results with ExGS. Running the experiment shows the following:

QuickExact non equivalent layouts = 12
ClusterComplete non equivalent layouts = 0

The reason for this non-equivalence has to do with an edge case that occurs when the local potential of the dependent cell is within POP_STABILITY_ERROR of a charge transition threshold. That is, when V_depcell in [mu- - e, mu- + e] U [mu+ - e, mu+ + e].

There are two test cases that need to be adjusted to reflect the behaviour of ExGS (as a reference exact simulator). I believe these are "Test case 4" and "Test case 7". In #390 , these test cases in clustercomplete.cpp have been commented out.

Expected behavior

Running the equivalence_checking_exact_simulation.cpp experiment returns:

QuickExact non equivalent layouts = 0
ClusterComplete non equivalent layouts = 0

How to Reproduce

Running the equivalence_checking_exact_simulation.cpp experiment on #390 shows the abberant behaviour.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions