/
test_pdftools.py
31 lines (24 loc) · 1.03 KB
/
test_pdftools.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
from pygsti.tools import pdftools
from ..util import BaseCase
class PDFToolsTester(BaseCase):
def test_pdf_tools(self):
p = {'a': 0., 'b': 1.0}
q = {'a': 0.5, 'b': 0.5}
self.assertAlmostEqual(pdftools.tvd(p, q), .5)
self.assertAlmostEqual(pdftools.classical_fidelity(p, q), .5)
p = {'b': 1.0}
q = {'a': 0.5, 'b': 0.5}
self.assertAlmostEqual(pdftools.tvd(p, q), .5)
self.assertAlmostEqual(pdftools.classical_fidelity(p, q), .5)
p = {'b': 1.0}
q = {'a': 1.0}
self.assertAlmostEqual(pdftools.tvd(p, q), 1.)
self.assertAlmostEqual(pdftools.classical_fidelity(p, q), 0.)
p = {'a': 0., 'b': 1.0}
q = {'a': 1.0, 'b': .0}
self.assertAlmostEqual(pdftools.tvd(p, q), 1.)
self.assertAlmostEqual(pdftools.classical_fidelity(p, q), 0.)
p = {'a': 0., 'b': 1.0}
q = {'a': 0., 'b': 1.0}
self.assertAlmostEqual(pdftools.tvd(p, q), 0.)
self.assertAlmostEqual(pdftools.classical_fidelity(p, q), 1.)