code: def test_sdm_from_dict():
      dic = {
          (1, 2, 1, 1): QQ(1),
          (1, 1, 2, 1): QQ(1),
          (1, 0, 2, 1): QQ(1),
          (1, 0, 0, 3): QQ(1),
          (1, 1, 1, 0): QQ(1),
      }
      assert sdm_from_dict(dic, grlex) == [
          ((1, 2, 1, 1), QQ(1)),
          ((1, 1, 2, 1), QQ(1)),
          ((1, 0, 2, 1), QQ(1)),
          ((1, 0, 0, 3), QQ(1)),
          ((1, 1, 1, 0), QQ(1)),
      ]
  
imports: from sympy.polys.distributedmodules import sdm_monomial_mul, sdm_monomial_deg, sdm_monomial_divides, sdm_add, sdm_LM, sdm_LT, sdm_mul_term, sdm_zero, sdm_deg, sdm_LC, sdm_from_dict, sdm_spoly, sdm_ecart, sdm_nf_mora, sdm_groebner, sdm_from_vector, sdm_to_vector, sdm_monomial_lcm
  from sympy.polys.orderings import lex, grlex, InverseOrder
  from sympy.polys.domains import QQ
  from sympy.abc import x, y, z
label_desc: Use image node_id 6 for calling a global function with example usage: test_sdm_from_dict() without return types