code: def test_deep_type_frozenset():
      x1 = frozenset(["a", "b"])
      expected_type1 = FrozenSet[str]
      assert deep_type(x1) is expected_type1
      assert deep_isinstance(x1, expected_type1)
  
      with pytest.raises(NotImplementedError):
          x2 = frozenset(["a", 1])
          deep_type(x2)
  
imports: from typing import Any, FrozenSet, Optional, Tuple, Union
  import pytest
  from multipledispatch import dispatch
  from funsor.ops import AssociativeOp, Op
  from funsor.registry import PartialDispatcher
  from funsor.terms import Cat, Funsor, Number, Reduce, Stack, Variable
  from funsor.typing import GenericTypeMeta, Variadic, deep_isinstance, deep_issubclass, deep_type, get_args, get_origin, get_type_hints, typing_wrap
label_desc: Use image node_id 9 for calling a global function with example usage: test_deep_type_frozenset() without return types