code: def test_partial_function(linker):
      x = scalar("input")
      y = x**2
      f = function(
          [x],
          [y + 7, y - 9, y / 14.0],
          mode=Mode(optimizer=None, linker=linker),
      )
  
      if linker == "cvm":
          from pytensor.link.c.cvm import CVM
  
          assert isinstance(f.vm, CVM)
      else:
          assert isinstance(f.vm, Stack)
  
      assert f(3, output_subset=[0, 1, 2]) == f(3)
      assert f(4, output_subset=[0, 2]) == [f(4)[0], f(4)[2]]
  
      utt.assert_allclose(
          f(5), np.array([32.0, 16.0, 1.7857142857142858])
      )
  
imports: import time
  import numpy
  import pytest
  from pytensor.compile.function import function
  from pytensor.compile.io import In
  from pytensor.compile.mode import Mode, get_mode
  from pytensor.compile.sharedvalue import shared
  from pytensor.configdefaults import config
  from pytensor.graph.basic import Apply
  from pytensor.graph.fg import FunctionGraph
  from pytensor.graph.op import Op
  from pytensor.ifelse import ifelse
  from pytensor.link.c.basic import OpWiseCLinker
  from pytensor.link.c.exceptions import MissingGXX
  from pytensor.link.utils import map_storage
  from pytensor.link.vm import VM, Loop, Stack, VMLinker
  from pytensor.tensor.math import cosh, tanh
  from pytensor.tensor.type import lscalar, scalar, scalars, vector, vectors
  from pytensor.tensor.variable import TensorConstant
  from tests import unittest_tools
label_desc: Use image node_id 4 for calling a global function with example usage: test_partial_function(linker) without return types