code: def test_dyadic_simplify():
      x, y, z, k, n, m, w, f, s, A = symbols(
          "x, y, z, k, n, m, w, f, s, A"
      )
      N = ReferenceFrame("N")
  
      dy = N.x | N.x
      test1 = (1 / x + 1 / y) * dy
      assert (N.x & test1 & N.x) != (x + y) / (x * y)
      test1 = test1.simplify()
      assert (N.x & test1 & N.x) == (x + y) / (x * y)
  
      test2 = (A**2 * s**4 / (4 * pi * k * m**3)) * dy
      test2 = test2.simplify()
      assert (N.x & test2 & N.x) == (
          A**2 * s**4 / (4 * pi * k * m**3)
      )
  
      test3 = ((4 + 4 * x - 2 * (2 + 2 * x)) / (2 + 2 * x)) * dy
      test3 = test3.simplify()
      assert (N.x & test3 & N.x) == 0
  
      test4 = (
          (-4 * x * y**2 - 2 * y**3 - 2 * x**2 * y) / (x + y) ** 2
      ) * dy
      test4 = test4.simplify()
      assert (N.x & test4 & N.x) == -2 * y
  
file_path: sympy/sympy/physics/vector/tests/test_dyadic.py
imports: from sympy.core.numbers import Float, pi
  from sympy.core.symbol import symbols
  from sympy.functions.elementary.trigonometric import cos, sin
  from sympy.matrices.immutable import ImmutableDenseMatrix
  from sympy.physics.vector import ReferenceFrame, dynamicsymbols, outer
  from sympy.physics.vector.dyadic import _check_dyadic
  from sympy.testing.pytest import raises
label_desc: Use image node_id 2 for calling a global function with example usage: test_dyadic_simplify() without return types