{
  "operations": [
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/absolute",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/absolute/",
      "detail_json_href": "/api-data/ops/absolute.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.absolute",
      "free": false,
      "module": "numpy",
      "name": "absolute",
      "notes": "Element-wise absolute value.",
      "numpy_ref": "np.absolute",
      "slug": "absolute",
      "status": "supported",
      "summary": "Calculate the absolute value element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/add",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/add/",
      "detail_json_href": "/api-data/ops/add.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.add",
      "free": false,
      "module": "numpy",
      "name": "add",
      "notes": "Element-wise addition.",
      "numpy_ref": "np.add",
      "slug": "add",
      "status": "supported",
      "summary": "Add arguments element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/all",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/all/",
      "detail_json_href": "/api-data/ops/all.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.all",
      "free": false,
      "module": "numpy",
      "name": "all",
      "notes": "Test whether all array elements are true.",
      "numpy_ref": "np.all",
      "slug": "all",
      "status": "supported",
      "summary": "Test whether all array elements along a given axis evaluate to True.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/allclose",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/allclose/",
      "detail_json_href": "/api-data/ops/allclose.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.allclose",
      "free": false,
      "module": "numpy",
      "name": "allclose",
      "notes": "Element-wise tolerance check; cost = numel(a).",
      "numpy_ref": "np.allclose",
      "slug": "allclose",
      "status": "supported",
      "summary": "Returns True if two arrays are element-wise equal within a tolerance.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/angle",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/angle/",
      "detail_json_href": "/api-data/ops/angle.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.angle",
      "free": false,
      "module": "numpy",
      "name": "angle",
      "notes": "Return angle of complex argument element-wise.",
      "numpy_ref": "np.angle",
      "slug": "angle",
      "status": "supported",
      "summary": "Return the angle of the complex argument.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/any",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/any/",
      "detail_json_href": "/api-data/ops/any.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.any",
      "free": false,
      "module": "numpy",
      "name": "any",
      "notes": "Test whether any array element is true.",
      "numpy_ref": "np.any",
      "slug": "any",
      "status": "supported",
      "summary": "Test whether any array element along a given axis evaluates to True.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/append",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/append/",
      "detail_json_href": "/api-data/ops/append.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.append",
      "free": false,
      "module": "numpy",
      "name": "append",
      "notes": "Append values to end of array. Cost: numel(values).",
      "numpy_ref": "np.append",
      "slug": "append",
      "status": "supported",
      "summary": "Append values to the end of an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/apply-along-axis",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/apply-along-axis/",
      "detail_json_href": "/api-data/ops/apply_along_axis.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.apply_along_axis",
      "free": false,
      "module": "numpy",
      "name": "apply_along_axis",
      "notes": "Apply function along axis. Cost: numel(output). Inner function costs tracked separately.",
      "numpy_ref": "np.apply_along_axis",
      "slug": "apply_along_axis",
      "status": "supported",
      "summary": "Apply a function to 1-D slices along the given axis.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/apply-over-axes",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/apply-over-axes/",
      "detail_json_href": "/api-data/ops/apply_over_axes.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.apply_over_axes",
      "free": false,
      "module": "numpy",
      "name": "apply_over_axes",
      "notes": "Apply function over multiple axes. Cost: numel(output).",
      "numpy_ref": "np.apply_over_axes",
      "slug": "apply_over_axes",
      "status": "supported",
      "summary": "Apply a function repeatedly over multiple axes.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arange",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/arange/",
      "detail_json_href": "/api-data/ops/arange.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.arange",
      "free": false,
      "module": "numpy",
      "name": "arange",
      "notes": "Return evenly spaced values in given interval. Cost: numel(output).",
      "numpy_ref": "np.arange",
      "slug": "arange",
      "status": "supported",
      "summary": "Return evenly spaced values within a given interval.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arccos",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arccos/",
      "detail_json_href": "/api-data/ops/arccos.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arccos",
      "free": false,
      "module": "numpy",
      "name": "arccos",
      "notes": "Element-wise inverse cosine.",
      "numpy_ref": "np.arccos",
      "slug": "arccos",
      "status": "supported",
      "summary": "Trigonometric inverse cosine, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arccosh",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arccosh/",
      "detail_json_href": "/api-data/ops/arccosh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arccosh",
      "free": false,
      "module": "numpy",
      "name": "arccosh",
      "notes": "Element-wise inverse hyperbolic cosine.",
      "numpy_ref": "np.arccosh",
      "slug": "arccosh",
      "status": "supported",
      "summary": "Inverse hyperbolic cosine, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arcsin",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arcsin/",
      "detail_json_href": "/api-data/ops/arcsin.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arcsin",
      "free": false,
      "module": "numpy",
      "name": "arcsin",
      "notes": "Element-wise inverse sine.",
      "numpy_ref": "np.arcsin",
      "slug": "arcsin",
      "status": "supported",
      "summary": "Inverse sine, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arcsinh",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arcsinh/",
      "detail_json_href": "/api-data/ops/arcsinh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arcsinh",
      "free": false,
      "module": "numpy",
      "name": "arcsinh",
      "notes": "Element-wise inverse hyperbolic sine.",
      "numpy_ref": "np.arcsinh",
      "slug": "arcsinh",
      "status": "supported",
      "summary": "Inverse hyperbolic sine element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arctan",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arctan/",
      "detail_json_href": "/api-data/ops/arctan.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arctan",
      "free": false,
      "module": "numpy",
      "name": "arctan",
      "notes": "Element-wise inverse tangent.",
      "numpy_ref": "np.arctan",
      "slug": "arctan",
      "status": "supported",
      "summary": "Trigonometric inverse tangent, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arctan2",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arctan2/",
      "detail_json_href": "/api-data/ops/arctan2.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arctan2",
      "free": false,
      "module": "numpy",
      "name": "arctan2",
      "notes": "Element-wise arctan(y/x) considering quadrant.",
      "numpy_ref": "np.arctan2",
      "slug": "arctan2",
      "status": "supported",
      "summary": "Element-wise arc tangent of ``x1/x2`` choosing the quadrant correctly.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/arctanh",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/arctanh/",
      "detail_json_href": "/api-data/ops/arctanh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.arctanh",
      "free": false,
      "module": "numpy",
      "name": "arctanh",
      "notes": "Element-wise inverse hyperbolic tangent.",
      "numpy_ref": "np.arctanh",
      "slug": "arctanh",
      "status": "supported",
      "summary": "Inverse hyperbolic tangent element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/argmax",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/argmax/",
      "detail_json_href": "/api-data/ops/argmax.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.argmax",
      "free": false,
      "module": "numpy",
      "name": "argmax",
      "notes": "Index of maximum value.",
      "numpy_ref": "np.argmax",
      "slug": "argmax",
      "status": "supported",
      "summary": "Returns the indices of the maximum values along an axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/argmin",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/argmin/",
      "detail_json_href": "/api-data/ops/argmin.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.argmin",
      "free": false,
      "module": "numpy",
      "name": "argmin",
      "notes": "Index of minimum value.",
      "numpy_ref": "np.argmin",
      "slug": "argmin",
      "status": "supported",
      "summary": "Returns the indices of the minimum values along an axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/argpartition",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/argpartition/",
      "detail_json_href": "/api-data/ops/argpartition.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.argpartition",
      "free": false,
      "module": "numpy",
      "name": "argpartition",
      "notes": "Indirect partition; cost = n per slice.",
      "numpy_ref": "np.argpartition",
      "slug": "argpartition",
      "status": "supported",
      "summary": "Perform an indirect partition along the given axis using the algorithm specified by the `kind` keyword. It returns an array of indices of the same shape as `a` that index data along the given axis in partitioned order.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/argsort",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/argsort/",
      "detail_json_href": "/api-data/ops/argsort.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.argsort",
      "free": false,
      "module": "numpy",
      "name": "argsort",
      "notes": "Indirect sort; cost = n*ceil(log2(n)) per slice.",
      "numpy_ref": "np.argsort",
      "slug": "argsort",
      "status": "supported",
      "summary": "Returns the indices that would sort an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/argwhere",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/argwhere/",
      "detail_json_href": "/api-data/ops/argwhere.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.argwhere",
      "free": false,
      "module": "numpy",
      "name": "argwhere",
      "notes": "Find indices of non-zero elements. Cost: numel(input).",
      "numpy_ref": "np.argwhere",
      "slug": "argwhere",
      "status": "supported",
      "summary": "Find the indices of array elements that are non-zero, grouped by element.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/array",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/array/",
      "detail_json_href": "/api-data/ops/array.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.array",
      "free": false,
      "module": "numpy",
      "name": "array",
      "notes": "Create array from data. Cost: numel(input).",
      "numpy_ref": "np.array",
      "slug": "array",
      "status": "supported",
      "summary": "Create an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/array-equal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/array-equal/",
      "detail_json_href": "/api-data/ops/array_equal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.array_equal",
      "free": false,
      "module": "numpy",
      "name": "array_equal",
      "notes": "Element-wise equality; cost = numel(a).",
      "numpy_ref": "np.array_equal",
      "slug": "array_equal",
      "status": "supported",
      "summary": "True if two arrays have the same shape and elements, False otherwise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/array-equiv",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/array-equiv/",
      "detail_json_href": "/api-data/ops/array_equiv.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.array_equiv",
      "free": false,
      "module": "numpy",
      "name": "array_equiv",
      "notes": "Element-wise equivalence; cost = numel(a).",
      "numpy_ref": "np.array_equiv",
      "slug": "array_equiv",
      "status": "supported",
      "summary": "Returns True if input arrays are shape consistent and all elements equal.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/array-split",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/array-split/",
      "detail_json_href": "/api-data/ops/array_split.json",
      "display_type": "free",
      "flopscope_ref": "fnp.array_split",
      "free": true,
      "module": "numpy",
      "name": "array_split",
      "notes": "Split array into sub-arrays (possibly unequal). Cost: numel(output).",
      "numpy_ref": "np.array_split",
      "slug": "array_split",
      "status": "supported",
      "summary": "Split an array into multiple sub-arrays.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/asarray",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/asarray/",
      "detail_json_href": "/api-data/ops/asarray.json",
      "display_type": "free",
      "flopscope_ref": "fnp.asarray",
      "free": true,
      "module": "numpy",
      "name": "asarray",
      "notes": "Convert input to array. Cost: numel(input).",
      "numpy_ref": "np.asarray",
      "slug": "asarray",
      "status": "supported",
      "summary": "Convert the input to an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/asarray-chkfinite",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/asarray-chkfinite/",
      "detail_json_href": "/api-data/ops/asarray_chkfinite.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.asarray_chkfinite",
      "free": false,
      "module": "numpy",
      "name": "asarray_chkfinite",
      "notes": "Convert to array, raising if NaN or inf. Cost: numel(input).",
      "numpy_ref": "np.asarray_chkfinite",
      "slug": "asarray_chkfinite",
      "status": "supported",
      "summary": "Convert the input to an array, checking for NaNs or Infs.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/astype",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/astype/",
      "detail_json_href": "/api-data/ops/astype.json",
      "display_type": "free",
      "flopscope_ref": "fnp.astype",
      "free": true,
      "module": "numpy",
      "name": "astype",
      "notes": "Cast array to specified type.",
      "numpy_ref": "np.astype",
      "slug": "astype",
      "status": "supported",
      "summary": "Copies an array to a specified data type.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/atleast-1d",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/atleast-1d/",
      "detail_json_href": "/api-data/ops/atleast_1d.json",
      "display_type": "free",
      "flopscope_ref": "fnp.atleast_1d",
      "free": true,
      "module": "numpy",
      "name": "atleast_1d",
      "notes": "View inputs as arrays with at least one dimension.",
      "numpy_ref": "np.atleast_1d",
      "slug": "atleast_1d",
      "status": "supported",
      "summary": "Convert inputs to arrays with at least one dimension.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/atleast-2d",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/atleast-2d/",
      "detail_json_href": "/api-data/ops/atleast_2d.json",
      "display_type": "free",
      "flopscope_ref": "fnp.atleast_2d",
      "free": true,
      "module": "numpy",
      "name": "atleast_2d",
      "notes": "View inputs as arrays with at least two dimensions.",
      "numpy_ref": "np.atleast_2d",
      "slug": "atleast_2d",
      "status": "supported",
      "summary": "View inputs as arrays with at least two dimensions.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/atleast-3d",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/atleast-3d/",
      "detail_json_href": "/api-data/ops/atleast_3d.json",
      "display_type": "free",
      "flopscope_ref": "fnp.atleast_3d",
      "free": true,
      "module": "numpy",
      "name": "atleast_3d",
      "notes": "View inputs as arrays with at least three dimensions.",
      "numpy_ref": "np.atleast_3d",
      "slug": "atleast_3d",
      "status": "supported",
      "summary": "View inputs as arrays with at least three dimensions.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/average",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/average/",
      "detail_json_href": "/api-data/ops/average.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.average",
      "free": false,
      "module": "numpy",
      "name": "average",
      "notes": "Weighted average of array elements.",
      "numpy_ref": "np.average",
      "slug": "average",
      "status": "supported",
      "summary": "Compute the weighted average along the specified axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bartlett",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/bartlett/",
      "detail_json_href": "/api-data/ops/bartlett.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.bartlett",
      "free": false,
      "module": "flopscope._window",
      "name": "bartlett",
      "notes": "Bartlett window. Cost: n (one linear eval per sample).",
      "numpy_ref": "np.bartlett",
      "slug": "bartlett",
      "status": "supported",
      "summary": "Return the Bartlett window.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bincount",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/bincount/",
      "detail_json_href": "/api-data/ops/bincount.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.bincount",
      "free": false,
      "module": "numpy",
      "name": "bincount",
      "notes": "Integer counting; cost = numel(x).",
      "numpy_ref": "np.bincount",
      "slug": "bincount",
      "status": "supported",
      "summary": "Count number of occurrences of each value in array of non-negative ints.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-and",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-and/",
      "detail_json_href": "/api-data/ops/bitwise_and.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_and",
      "free": false,
      "module": "numpy",
      "name": "bitwise_and",
      "notes": "Element-wise bitwise AND.",
      "numpy_ref": "np.bitwise_and",
      "slug": "bitwise_and",
      "status": "supported",
      "summary": "Compute the bit-wise AND of two arrays element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-count",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-count/",
      "detail_json_href": "/api-data/ops/bitwise_count.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_count",
      "free": false,
      "module": "numpy",
      "name": "bitwise_count",
      "notes": "Count set bits element-wise (popcount).",
      "numpy_ref": "np.bitwise_count",
      "slug": "bitwise_count",
      "status": "supported",
      "summary": "Computes the number of 1-bits in the absolute value of ``x``. Analogous to the builtin `int.bit_count` or ``popcount`` in C++.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-left-shift",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-left-shift/",
      "detail_json_href": "/api-data/ops/bitwise_left_shift.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_left_shift",
      "free": false,
      "module": "numpy",
      "name": "bitwise_left_shift",
      "notes": "Element-wise left bit shift.",
      "numpy_ref": "np.bitwise_left_shift",
      "slug": "bitwise_left_shift",
      "status": "supported",
      "summary": "Shift the bits of an integer to the left.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-not",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-not/",
      "detail_json_href": "/api-data/ops/bitwise_not.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_not",
      "free": false,
      "module": "numpy",
      "name": "bitwise_not",
      "notes": "Element-wise bitwise NOT.",
      "numpy_ref": "np.bitwise_not",
      "slug": "bitwise_not",
      "status": "supported",
      "summary": "Compute bit-wise inversion, or bit-wise NOT, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-or",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-or/",
      "detail_json_href": "/api-data/ops/bitwise_or.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_or",
      "free": false,
      "module": "numpy",
      "name": "bitwise_or",
      "notes": "Element-wise bitwise OR.",
      "numpy_ref": "np.bitwise_or",
      "slug": "bitwise_or",
      "status": "supported",
      "summary": "Compute the bit-wise OR of two arrays element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-right-shift",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-right-shift/",
      "detail_json_href": "/api-data/ops/bitwise_right_shift.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_right_shift",
      "free": false,
      "module": "numpy",
      "name": "bitwise_right_shift",
      "notes": "Element-wise right bit shift.",
      "numpy_ref": "np.bitwise_right_shift",
      "slug": "bitwise_right_shift",
      "status": "supported",
      "summary": "Shift the bits of an integer to the right.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bitwise-xor",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/bitwise-xor/",
      "detail_json_href": "/api-data/ops/bitwise_xor.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.bitwise_xor",
      "free": false,
      "module": "numpy",
      "name": "bitwise_xor",
      "notes": "Element-wise bitwise XOR.",
      "numpy_ref": "np.bitwise_xor",
      "slug": "bitwise_xor",
      "status": "supported",
      "summary": "Compute the bit-wise XOR of two arrays element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/blackman",
      "category": "counted_custom",
      "cost_formula": "3n",
      "cost_formula_latex": "$3n$",
      "detail_href": "/docs/api/numpy/blackman/",
      "detail_json_href": "/api-data/ops/blackman.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.blackman",
      "free": false,
      "module": "flopscope._window",
      "name": "blackman",
      "notes": "Blackman window. Cost: 3*n (three cosine terms per sample).",
      "numpy_ref": "np.blackman",
      "slug": "blackman",
      "status": "supported",
      "summary": "Return the Blackman window.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/block",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/block/",
      "detail_json_href": "/api-data/ops/block.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.block",
      "free": false,
      "module": "numpy",
      "name": "block",
      "notes": "Assemble ndarray from nested list of blocks. Cost: numel(output).",
      "numpy_ref": "np.block",
      "slug": "block",
      "status": "supported",
      "summary": "Assemble an nd-array from nested lists of blocks.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/bmat",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/bmat/",
      "detail_json_href": "/api-data/ops/bmat.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.bmat",
      "free": false,
      "module": "numpy",
      "name": "bmat",
      "notes": "Build matrix from nested list of matrices. Cost: numel(output).",
      "numpy_ref": "np.bmat",
      "slug": "bmat",
      "status": "supported",
      "summary": "Build a matrix object from a string, nested sequence, or array.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/broadcast-arrays",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/broadcast-arrays/",
      "detail_json_href": "/api-data/ops/broadcast_arrays.json",
      "display_type": "free",
      "flopscope_ref": "fnp.broadcast_arrays",
      "free": true,
      "module": "numpy",
      "name": "broadcast_arrays",
      "notes": "Broadcast arrays against each other. Cost: numel(output).",
      "numpy_ref": "np.broadcast_arrays",
      "slug": "broadcast_arrays",
      "status": "supported",
      "summary": "Broadcast any number of arrays against each other.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/broadcast-shapes",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/broadcast-shapes/",
      "detail_json_href": "/api-data/ops/broadcast_shapes.json",
      "display_type": "free",
      "flopscope_ref": "fnp.broadcast_shapes",
      "free": true,
      "module": "numpy",
      "name": "broadcast_shapes",
      "notes": "Compute broadcast shape from input shapes.",
      "numpy_ref": "np.broadcast_shapes",
      "slug": "broadcast_shapes",
      "status": "supported",
      "summary": "Broadcast the input shapes into a single shape.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/broadcast-to",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/broadcast-to/",
      "detail_json_href": "/api-data/ops/broadcast_to.json",
      "display_type": "free",
      "flopscope_ref": "fnp.broadcast_to",
      "free": true,
      "module": "numpy",
      "name": "broadcast_to",
      "notes": "Broadcast array to new shape. Cost: numel(output).",
      "numpy_ref": "np.broadcast_to",
      "slug": "broadcast_to",
      "status": "supported",
      "summary": "Broadcast an array to a new shape.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/can-cast",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/can-cast/",
      "detail_json_href": "/api-data/ops/can_cast.json",
      "display_type": "free",
      "flopscope_ref": "fnp.can_cast",
      "free": true,
      "module": "numpy",
      "name": "can_cast",
      "notes": "Returns True if cast is safe.",
      "numpy_ref": "np.can_cast",
      "slug": "can_cast",
      "status": "supported",
      "summary": "Returns True if cast between data types can occur according to the casting rule.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cbrt",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/cbrt/",
      "detail_json_href": "/api-data/ops/cbrt.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cbrt",
      "free": false,
      "module": "numpy",
      "name": "cbrt",
      "notes": "Element-wise cube root.",
      "numpy_ref": "np.cbrt",
      "slug": "cbrt",
      "status": "supported",
      "summary": "Return the cube-root of an array, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ceil",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/ceil/",
      "detail_json_href": "/api-data/ops/ceil.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.ceil",
      "free": false,
      "module": "numpy",
      "name": "ceil",
      "notes": "Element-wise ceiling.",
      "numpy_ref": "np.ceil",
      "slug": "ceil",
      "status": "supported",
      "summary": "Return the ceiling of the input, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/choose",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/choose/",
      "detail_json_href": "/api-data/ops/choose.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.choose",
      "free": false,
      "module": "numpy",
      "name": "choose",
      "notes": "Construct array from index array and choices. Cost: numel(output).",
      "numpy_ref": "np.choose",
      "slug": "choose",
      "status": "supported",
      "summary": "Construct an array from an index array and a list of arrays to choose from.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/clip",
      "category": "counted_custom",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/clip/",
      "detail_json_href": "/api-data/ops/clip.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.clip",
      "free": false,
      "module": "numpy",
      "name": "clip",
      "notes": "Clip array to [a_min, a_max] element-wise.",
      "numpy_ref": "np.clip",
      "slug": "clip",
      "status": "supported",
      "summary": "Clip (limit) the values in an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/column-stack",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/column-stack/",
      "detail_json_href": "/api-data/ops/column_stack.json",
      "display_type": "free",
      "flopscope_ref": "fnp.column_stack",
      "free": true,
      "module": "numpy",
      "name": "column_stack",
      "notes": "Stack 1-D arrays as columns into 2-D array.",
      "numpy_ref": "np.column_stack",
      "slug": "column_stack",
      "status": "supported",
      "summary": "Stack 1-D arrays as columns into a 2-D array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/common-type",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/common-type/",
      "detail_json_href": "/api-data/ops/common_type.json",
      "display_type": "free",
      "flopscope_ref": "fnp.common_type",
      "free": true,
      "module": "numpy",
      "name": "common_type",
      "notes": "Return scalar type common to all input arrays.",
      "numpy_ref": "np.common_type",
      "slug": "common_type",
      "status": "supported",
      "summary": "Return a scalar type which is common to the input arrays.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/compress",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/compress/",
      "detail_json_href": "/api-data/ops/compress.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.compress",
      "free": false,
      "module": "numpy",
      "name": "compress",
      "notes": "Return selected slices along axis. Cost: numel(input).",
      "numpy_ref": "np.compress",
      "slug": "compress",
      "status": "supported",
      "summary": "Return selected slices of an array along given axis.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/concatenate",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/concatenate/",
      "detail_json_href": "/api-data/ops/concatenate.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.concatenate",
      "free": false,
      "module": "numpy",
      "name": "concatenate",
      "notes": "Join arrays along axis. Cost: numel(output).",
      "numpy_ref": "np.concatenate",
      "slug": "concatenate",
      "status": "supported",
      "summary": "Join a sequence of arrays along an existing axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/conj",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/conj/",
      "detail_json_href": "/api-data/ops/conj.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.conj",
      "free": false,
      "module": "numpy",
      "name": "conj",
      "notes": "Complex conjugate element-wise.",
      "numpy_ref": "np.conj",
      "slug": "conj",
      "status": "supported",
      "summary": "Return the complex conjugate, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/conjugate",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/conjugate/",
      "detail_json_href": "/api-data/ops/conjugate.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.conjugate",
      "free": false,
      "module": "numpy",
      "name": "conjugate",
      "notes": "Complex conjugate element-wise.",
      "numpy_ref": "np.conjugate",
      "slug": "conjugate",
      "status": "supported",
      "summary": "Return the complex conjugate, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/convolve",
      "category": "counted_custom",
      "cost_formula": "n * m",
      "cost_formula_latex": "$n \\cdot m$",
      "detail_href": "/docs/api/numpy/convolve/",
      "detail_json_href": "/api-data/ops/convolve.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.convolve",
      "free": false,
      "module": "numpy",
      "name": "convolve",
      "notes": "1-D discrete convolution.",
      "numpy_ref": "np.convolve",
      "slug": "convolve",
      "status": "supported",
      "summary": "Returns the discrete, linear convolution of two one-dimensional sequences.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/copy",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/copy/",
      "detail_json_href": "/api-data/ops/copy.json",
      "display_type": "free",
      "flopscope_ref": "fnp.copy",
      "free": true,
      "module": "numpy",
      "name": "copy",
      "notes": "Return array copy.",
      "numpy_ref": "np.copy",
      "slug": "copy",
      "status": "supported",
      "summary": "Return an array copy of the given object.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/copysign",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/copysign/",
      "detail_json_href": "/api-data/ops/copysign.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.copysign",
      "free": false,
      "module": "numpy",
      "name": "copysign",
      "notes": "Copy sign of x2 to magnitude of x1 element-wise.",
      "numpy_ref": "np.copysign",
      "slug": "copysign",
      "status": "supported",
      "summary": "Change the sign of x1 to that of x2, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/copyto",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/copyto/",
      "detail_json_href": "/api-data/ops/copyto.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.copyto",
      "free": false,
      "module": "numpy",
      "name": "copyto",
      "notes": "Copy values from src to dst array. Cost: num copied.",
      "numpy_ref": "np.copyto",
      "slug": "copyto",
      "status": "supported",
      "summary": "Copies values from one array to another, broadcasting as necessary.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/corrcoef",
      "category": "counted_custom",
      "cost_formula": "n^2 * m",
      "cost_formula_latex": "$n^2 \\cdot m$",
      "detail_href": "/docs/api/numpy/corrcoef/",
      "detail_json_href": "/api-data/ops/corrcoef.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.corrcoef",
      "free": false,
      "module": "numpy",
      "name": "corrcoef",
      "notes": "Pearson correlation coefficients.",
      "numpy_ref": "np.corrcoef",
      "slug": "corrcoef",
      "status": "supported",
      "summary": "Return Pearson product-moment correlation coefficients.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/correlate",
      "category": "counted_custom",
      "cost_formula": "n * m",
      "cost_formula_latex": "$n \\cdot m$",
      "detail_href": "/docs/api/numpy/correlate/",
      "detail_json_href": "/api-data/ops/correlate.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.correlate",
      "free": false,
      "module": "numpy",
      "name": "correlate",
      "notes": "1-D cross-correlation.",
      "numpy_ref": "np.correlate",
      "slug": "correlate",
      "status": "supported",
      "summary": "Cross-correlation of two 1-dimensional sequences.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cos",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/cos/",
      "detail_json_href": "/api-data/ops/cos.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cos",
      "free": false,
      "module": "numpy",
      "name": "cos",
      "notes": "Element-wise cosine.",
      "numpy_ref": "np.cos",
      "slug": "cos",
      "status": "supported",
      "summary": "Cosine element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cosh",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/cosh/",
      "detail_json_href": "/api-data/ops/cosh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cosh",
      "free": false,
      "module": "numpy",
      "name": "cosh",
      "notes": "Element-wise hyperbolic cosine.",
      "numpy_ref": "np.cosh",
      "slug": "cosh",
      "status": "supported",
      "summary": "Hyperbolic cosine, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/count-nonzero",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/count-nonzero/",
      "detail_json_href": "/api-data/ops/count_nonzero.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.count_nonzero",
      "free": false,
      "module": "numpy",
      "name": "count_nonzero",
      "notes": "Count non-zero elements.",
      "numpy_ref": "np.count_nonzero",
      "slug": "count_nonzero",
      "status": "supported",
      "summary": "Counts the number of non-zero values in the array ``a``.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cov",
      "category": "counted_custom",
      "cost_formula": "n^2 * m",
      "cost_formula_latex": "$n^2 \\cdot m$",
      "detail_href": "/docs/api/numpy/cov/",
      "detail_json_href": "/api-data/ops/cov.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.cov",
      "free": false,
      "module": "numpy",
      "name": "cov",
      "notes": "Covariance matrix.",
      "numpy_ref": "np.cov",
      "slug": "cov",
      "status": "supported",
      "summary": "Estimate a covariance matrix, given data and weights.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cross",
      "category": "counted_custom",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/cross/",
      "detail_json_href": "/api-data/ops/cross.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.cross",
      "free": false,
      "module": "numpy",
      "name": "cross",
      "notes": "Cross product of two 3-D vectors.",
      "numpy_ref": "np.cross",
      "slug": "cross",
      "status": "supported",
      "summary": "Return the cross product of two (arrays of) vectors.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cumprod",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/cumprod/",
      "detail_json_href": "/api-data/ops/cumprod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cumprod",
      "free": false,
      "module": "numpy",
      "name": "cumprod",
      "notes": "Cumulative product of array elements.",
      "numpy_ref": "np.cumprod",
      "slug": "cumprod",
      "status": "supported",
      "summary": "Return the cumulative product of elements along a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cumsum",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/cumsum/",
      "detail_json_href": "/api-data/ops/cumsum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cumsum",
      "free": false,
      "module": "numpy",
      "name": "cumsum",
      "notes": "Cumulative sum of array elements.",
      "numpy_ref": "np.cumsum",
      "slug": "cumsum",
      "status": "supported",
      "summary": "Return the cumulative sum of the elements along a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cumulative-prod",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/cumulative-prod/",
      "detail_json_href": "/api-data/ops/cumulative_prod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cumulative_prod",
      "free": false,
      "module": "numpy",
      "name": "cumulative_prod",
      "notes": "Cumulative product (NumPy 2.x array API).",
      "numpy_ref": "np.cumulative_prod",
      "slug": "cumulative_prod",
      "status": "supported",
      "summary": "Return the cumulative product of elements along a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/cumulative-sum",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/cumulative-sum/",
      "detail_json_href": "/api-data/ops/cumulative_sum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.cumulative_sum",
      "free": false,
      "module": "numpy",
      "name": "cumulative_sum",
      "notes": "Cumulative sum (NumPy 2.x array API).",
      "numpy_ref": "np.cumulative_sum",
      "slug": "cumulative_sum",
      "status": "supported",
      "summary": "Return the cumulative sum of the elements along a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/degrees",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/degrees/",
      "detail_json_href": "/api-data/ops/degrees.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.degrees",
      "free": false,
      "module": "numpy",
      "name": "degrees",
      "notes": "Convert radians to degrees element-wise.",
      "numpy_ref": "np.degrees",
      "slug": "degrees",
      "status": "supported",
      "summary": "Convert angles from radians to degrees.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/delete",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/delete/",
      "detail_json_href": "/api-data/ops/delete.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.delete",
      "free": false,
      "module": "numpy",
      "name": "delete",
      "notes": "Return array with sub-arrays deleted along axis. Cost: num deleted.",
      "numpy_ref": "np.delete",
      "slug": "delete",
      "status": "supported",
      "summary": "Return a new array with sub-arrays along an axis deleted. For a one dimensional array, this returns those entries not returned by `arr[obj]`.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/diag",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/diag/",
      "detail_json_href": "/api-data/ops/diag.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.diag",
      "free": false,
      "module": "numpy",
      "name": "diag",
      "notes": "Extract diagonal or construct diagonal array. Cost: len(diagonal).",
      "numpy_ref": "np.diag",
      "slug": "diag",
      "status": "supported",
      "summary": "Extract a diagonal or construct a diagonal array.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/diag-indices",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/diag-indices/",
      "detail_json_href": "/api-data/ops/diag_indices.json",
      "display_type": "free",
      "flopscope_ref": "fnp.diag_indices",
      "free": true,
      "module": "numpy",
      "name": "diag_indices",
      "notes": "Return indices to access main diagonal of n-D array.",
      "numpy_ref": "np.diag_indices",
      "slug": "diag_indices",
      "status": "supported",
      "summary": "Return the indices to access the main diagonal of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/diag-indices-from",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/diag-indices-from/",
      "detail_json_href": "/api-data/ops/diag_indices_from.json",
      "display_type": "free",
      "flopscope_ref": "fnp.diag_indices_from",
      "free": true,
      "module": "numpy",
      "name": "diag_indices_from",
      "notes": "Return indices to access main diagonal of given array.",
      "numpy_ref": "np.diag_indices_from",
      "slug": "diag_indices_from",
      "status": "supported",
      "summary": "Return the indices to access the main diagonal of an n-dimensional array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/diagflat",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/diagflat/",
      "detail_json_href": "/api-data/ops/diagflat.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.diagflat",
      "free": false,
      "module": "numpy",
      "name": "diagflat",
      "notes": "Create diagonal array from flattened input. Cost: len(v).",
      "numpy_ref": "np.diagflat",
      "slug": "diagflat",
      "status": "supported",
      "summary": "Create a two-dimensional array with the flattened input as a diagonal.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/diagonal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/diagonal/",
      "detail_json_href": "/api-data/ops/diagonal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.diagonal",
      "free": false,
      "module": "numpy",
      "name": "diagonal",
      "notes": "Return specified diagonals. Cost: numel(input).",
      "numpy_ref": "np.diagonal",
      "slug": "diagonal",
      "status": "supported",
      "summary": "Return specified diagonals.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/diff",
      "category": "counted_custom",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/diff/",
      "detail_json_href": "/api-data/ops/diff.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.diff",
      "free": false,
      "module": "numpy",
      "name": "diff",
      "notes": "n-th discrete difference along axis.",
      "numpy_ref": "np.diff",
      "slug": "diff",
      "status": "supported",
      "summary": "Calculate the n-th discrete difference along the given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/digitize",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/digitize/",
      "detail_json_href": "/api-data/ops/digitize.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.digitize",
      "free": false,
      "module": "numpy",
      "name": "digitize",
      "notes": "Bin search; cost = n*ceil(log2(bins)).",
      "numpy_ref": "np.digitize",
      "slug": "digitize",
      "status": "supported",
      "summary": "Return the indices of the bins to which each value in input array belongs.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/divide",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/divide/",
      "detail_json_href": "/api-data/ops/divide.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.divide",
      "free": false,
      "module": "numpy",
      "name": "divide",
      "notes": "Element-wise true division.",
      "numpy_ref": "np.divide",
      "slug": "divide",
      "status": "supported",
      "summary": "Divide arguments element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/dot",
      "category": "counted_custom",
      "cost_formula": "m * k * n (FMA=1)",
      "cost_formula_latex": "$m \\cdot k \\cdot n$",
      "detail_href": "/docs/api/numpy/dot/",
      "detail_json_href": "/api-data/ops/dot.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.dot",
      "free": false,
      "module": "numpy",
      "name": "dot",
      "notes": "Dot product; cost = M*K*N (FMA=1).",
      "numpy_ref": "np.dot",
      "slug": "dot",
      "status": "supported",
      "summary": "Dot product of two arrays. Specifically,",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/dsplit",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/dsplit/",
      "detail_json_href": "/api-data/ops/dsplit.json",
      "display_type": "free",
      "flopscope_ref": "fnp.dsplit",
      "free": true,
      "module": "numpy",
      "name": "dsplit",
      "notes": "Split array into multiple sub-arrays depth-wise. Cost: numel(output).",
      "numpy_ref": "np.dsplit",
      "slug": "dsplit",
      "status": "supported",
      "summary": "Split array into multiple sub-arrays along the 3rd axis (depth).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/dstack",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/dstack/",
      "detail_json_href": "/api-data/ops/dstack.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.dstack",
      "free": false,
      "module": "numpy",
      "name": "dstack",
      "notes": "Stack arrays depth-wise (along third axis). Cost: numel(output).",
      "numpy_ref": "np.dstack",
      "slug": "dstack",
      "status": "supported",
      "summary": "Stack arrays in sequence depth wise (along third axis).",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ediff1d",
      "category": "counted_custom",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/ediff1d/",
      "detail_json_href": "/api-data/ops/ediff1d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.ediff1d",
      "free": false,
      "module": "numpy",
      "name": "ediff1d",
      "notes": "Differences between consecutive elements.",
      "numpy_ref": "np.ediff1d",
      "slug": "ediff1d",
      "status": "supported",
      "summary": "The differences between consecutive elements of an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/einsum",
      "category": "counted_custom",
      "cost_formula": "op_factor * product of all index dims",
      "cost_formula_latex": "$\\text{op\\_factor} \\cdot \\prod_i d_i$",
      "detail_href": "/docs/api/numpy/einsum/",
      "detail_json_href": "/api-data/ops/einsum.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.einsum",
      "free": false,
      "module": "numpy",
      "name": "einsum",
      "notes": "Generalized Einstein summation.",
      "numpy_ref": "np.einsum",
      "slug": "einsum",
      "status": "supported",
      "summary": "Evaluates the Einstein summation convention on the operands.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/einsum-path",
      "category": "counted_custom",
      "cost_formula": "0 (planning only)",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/einsum-path/",
      "detail_json_href": "/api-data/ops/einsum_path.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.einsum_path",
      "free": false,
      "module": "numpy",
      "name": "einsum_path",
      "notes": "Optimize einsum contraction path (no numeric output).",
      "numpy_ref": "np.einsum_path",
      "slug": "einsum_path",
      "status": "supported",
      "summary": "Evaluates the lowest cost contraction order for an einsum expression by considering the creation of intermediate arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/empty",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/empty/",
      "detail_json_href": "/api-data/ops/empty.json",
      "display_type": "free",
      "flopscope_ref": "fnp.empty",
      "free": true,
      "module": "numpy",
      "name": "empty",
      "notes": "Uninitialized array allocation.",
      "numpy_ref": "np.empty",
      "slug": "empty",
      "status": "supported",
      "summary": "Return a new array of given shape and type, without initializing entries.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/empty-like",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/empty-like/",
      "detail_json_href": "/api-data/ops/empty_like.json",
      "display_type": "free",
      "flopscope_ref": "fnp.empty_like",
      "free": true,
      "module": "numpy",
      "name": "empty_like",
      "notes": "Uninitialized array with same shape/type as input.",
      "numpy_ref": "np.empty_like",
      "slug": "empty_like",
      "status": "supported",
      "summary": "Return a new array with the same shape and type as a given array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/equal",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/equal/",
      "detail_json_href": "/api-data/ops/equal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.equal",
      "free": false,
      "module": "numpy",
      "name": "equal",
      "notes": "Element-wise x1 == x2.",
      "numpy_ref": "np.equal",
      "slug": "equal",
      "status": "supported",
      "summary": "Return (x1 == x2) element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/exp",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/exp/",
      "detail_json_href": "/api-data/ops/exp.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.exp",
      "free": false,
      "module": "numpy",
      "name": "exp",
      "notes": "Element-wise e^x.",
      "numpy_ref": "np.exp",
      "slug": "exp",
      "status": "supported",
      "summary": "Calculate the exponential of all elements in the input array.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/exp2",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/exp2/",
      "detail_json_href": "/api-data/ops/exp2.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.exp2",
      "free": false,
      "module": "numpy",
      "name": "exp2",
      "notes": "Element-wise 2^x.",
      "numpy_ref": "np.exp2",
      "slug": "exp2",
      "status": "supported",
      "summary": "Calculate `2**p` for all `p` in the input array.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/expand-dims",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/expand-dims/",
      "detail_json_href": "/api-data/ops/expand_dims.json",
      "display_type": "free",
      "flopscope_ref": "fnp.expand_dims",
      "free": true,
      "module": "numpy",
      "name": "expand_dims",
      "notes": "Insert new size-1 axis.",
      "numpy_ref": "np.expand_dims",
      "slug": "expand_dims",
      "status": "supported",
      "summary": "Expand the shape of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/expm1",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/expm1/",
      "detail_json_href": "/api-data/ops/expm1.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.expm1",
      "free": false,
      "module": "numpy",
      "name": "expm1",
      "notes": "Element-wise e^x - 1 (accurate near zero).",
      "numpy_ref": "np.expm1",
      "slug": "expm1",
      "status": "supported",
      "summary": "Calculate ``exp(x) - 1`` for all elements in the array.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/extract",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/extract/",
      "detail_json_href": "/api-data/ops/extract.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.extract",
      "free": false,
      "module": "numpy",
      "name": "extract",
      "notes": "Return elements satisfying condition. Cost: numel(input).",
      "numpy_ref": "np.extract",
      "slug": "extract",
      "status": "supported",
      "summary": "Return the elements of an array that satisfy some condition.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/eye",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/eye/",
      "detail_json_href": "/api-data/ops/eye.json",
      "display_type": "free",
      "flopscope_ref": "fnp.eye",
      "free": true,
      "module": "numpy",
      "name": "eye",
      "notes": "Create identity matrix.",
      "numpy_ref": "np.eye",
      "slug": "eye",
      "status": "supported",
      "summary": "Return a 2-D array with ones on the diagonal and zeros elsewhere.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fabs",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/fabs/",
      "detail_json_href": "/api-data/ops/fabs.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.fabs",
      "free": false,
      "module": "numpy",
      "name": "fabs",
      "notes": "Element-wise absolute value (always float).",
      "numpy_ref": "np.fabs",
      "slug": "fabs",
      "status": "supported",
      "summary": "Compute the absolute values element-wise.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/fft",
      "category": "counted_custom",
      "cost_formula": "5n * ceil(log2(n))",
      "cost_formula_latex": "$5n \\cdot \\lceil\\log_2 n\\rceil$",
      "detail_href": "/docs/api/numpy/fft/fft/",
      "detail_json_href": "/api-data/ops/fft-fft.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.fft",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.fft",
      "notes": "1-D complex FFT. Cost: 5*n*ceil(log2(n)) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.fft",
      "slug": "fft-fft",
      "status": "supported",
      "summary": "Compute the one-dimensional discrete Fourier Transform.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/fft2",
      "category": "counted_custom",
      "cost_formula": "5N * ceil(log2(N))",
      "cost_formula_latex": "$5N \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/fft2/",
      "detail_json_href": "/api-data/ops/fft-fft2.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.fft2",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.fft2",
      "notes": "2-D complex FFT. Cost: 5*N*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.fft2",
      "slug": "fft-fft2",
      "status": "supported",
      "summary": "Compute the 2-dimensional discrete Fourier Transform.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/fftfreq",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/fft/fftfreq/",
      "detail_json_href": "/api-data/ops/fft-fftfreq.json",
      "display_type": "free",
      "flopscope_ref": "fnp.fft.fftfreq",
      "free": true,
      "module": "numpy.fft",
      "name": "fft.fftfreq",
      "notes": "FFT sample frequencies. No arithmetic; returns index array.",
      "numpy_ref": "np.fft.fftfreq",
      "slug": "fft-fftfreq",
      "status": "supported",
      "summary": "Return the Discrete Fourier Transform sample frequencies.",
      "weight": 0.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/fftn",
      "category": "counted_custom",
      "cost_formula": "5N * ceil(log2(N))",
      "cost_formula_latex": "$5N \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/fftn/",
      "detail_json_href": "/api-data/ops/fft-fftn.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.fftn",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.fftn",
      "notes": "N-D complex FFT. Cost: 5*N*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.fftn",
      "slug": "fft-fftn",
      "status": "supported",
      "summary": "Compute the N-dimensional discrete Fourier Transform.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/fftshift",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/fft/fftshift/",
      "detail_json_href": "/api-data/ops/fft-fftshift.json",
      "display_type": "free",
      "flopscope_ref": "fnp.fft.fftshift",
      "free": true,
      "module": "numpy.fft",
      "name": "fft.fftshift",
      "notes": "Shift zero-frequency component to center. No arithmetic; index reordering only.",
      "numpy_ref": "np.fft.fftshift",
      "slug": "fft-fftshift",
      "status": "supported",
      "summary": "Shift the zero-frequency component to the center of the spectrum.",
      "weight": 0.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/hfft",
      "category": "counted_custom",
      "cost_formula": "5n * ceil(log2(n))",
      "cost_formula_latex": "$5n \\cdot \\lceil\\log_2 n\\rceil$",
      "detail_href": "/docs/api/numpy/fft/hfft/",
      "detail_json_href": "/api-data/ops/fft-hfft.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.hfft",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.hfft",
      "notes": "FFT of Hermitian-symmetric signal. Cost: 5*n_out*ceil(log2(n_out)) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.hfft",
      "slug": "fft-hfft",
      "status": "supported",
      "summary": "Compute the FFT of a signal that has Hermitian symmetry, i.e., a real spectrum.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/ifft",
      "category": "counted_custom",
      "cost_formula": "5n * ceil(log2(n))",
      "cost_formula_latex": "$5n \\cdot \\lceil\\log_2 n\\rceil$",
      "detail_href": "/docs/api/numpy/fft/ifft/",
      "detail_json_href": "/api-data/ops/fft-ifft.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.ifft",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.ifft",
      "notes": "Inverse 1-D complex FFT. Cost: 5*n*ceil(log2(n)) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.ifft",
      "slug": "fft-ifft",
      "status": "supported",
      "summary": "Compute the one-dimensional inverse discrete Fourier Transform.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/ifft2",
      "category": "counted_custom",
      "cost_formula": "5N * ceil(log2(N))",
      "cost_formula_latex": "$5N \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/ifft2/",
      "detail_json_href": "/api-data/ops/fft-ifft2.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.ifft2",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.ifft2",
      "notes": "Inverse 2-D complex FFT. Cost: 5*N*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.ifft2",
      "slug": "fft-ifft2",
      "status": "supported",
      "summary": "Compute the 2-dimensional inverse discrete Fourier Transform.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/ifftn",
      "category": "counted_custom",
      "cost_formula": "5N * ceil(log2(N))",
      "cost_formula_latex": "$5N \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/ifftn/",
      "detail_json_href": "/api-data/ops/fft-ifftn.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.ifftn",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.ifftn",
      "notes": "Inverse N-D complex FFT. Cost: 5*N*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.ifftn",
      "slug": "fft-ifftn",
      "status": "supported",
      "summary": "Compute the N-dimensional inverse discrete Fourier Transform.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/ifftshift",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/fft/ifftshift/",
      "detail_json_href": "/api-data/ops/fft-ifftshift.json",
      "display_type": "free",
      "flopscope_ref": "fnp.fft.ifftshift",
      "free": true,
      "module": "numpy.fft",
      "name": "fft.ifftshift",
      "notes": "Inverse of fftshift. No arithmetic; index reordering only.",
      "numpy_ref": "np.fft.ifftshift",
      "slug": "fft-ifftshift",
      "status": "supported",
      "summary": "The inverse of `fftshift`. Although identical for even-length `x`, the functions differ by one sample for odd-length `x`.",
      "weight": 0.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/ihfft",
      "category": "counted_custom",
      "cost_formula": "5n * ceil(log2(n))",
      "cost_formula_latex": "$5n \\cdot \\lceil\\log_2 n\\rceil$",
      "detail_href": "/docs/api/numpy/fft/ihfft/",
      "detail_json_href": "/api-data/ops/fft-ihfft.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.ihfft",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.ihfft",
      "notes": "Inverse FFT of Hermitian signal. Cost: 5*n*ceil(log2(n)) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.ihfft",
      "slug": "fft-ihfft",
      "status": "supported",
      "summary": "Compute the inverse FFT of a signal that has Hermitian symmetry.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/irfft",
      "category": "counted_custom",
      "cost_formula": "5(n/2) * ceil(log2(n))",
      "cost_formula_latex": "$5(n/2) \\cdot \\lceil\\log_2 n\\rceil$",
      "detail_href": "/docs/api/numpy/fft/irfft/",
      "detail_json_href": "/api-data/ops/fft-irfft.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.irfft",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.irfft",
      "notes": "Inverse 1-D real FFT. Cost: 5*(n//2)*ceil(log2(n)) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.irfft",
      "slug": "fft-irfft",
      "status": "supported",
      "summary": "Computes the inverse of `rfft`.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/irfft2",
      "category": "counted_custom",
      "cost_formula": "5(N/2) * ceil(log2(N))",
      "cost_formula_latex": "$5(N/2) \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/irfft2/",
      "detail_json_href": "/api-data/ops/fft-irfft2.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.irfft2",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.irfft2",
      "notes": "Inverse 2-D real FFT. Cost: 5*(N//2)*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.irfft2",
      "slug": "fft-irfft2",
      "status": "supported",
      "summary": "Computes the inverse of `rfft2`.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/irfftn",
      "category": "counted_custom",
      "cost_formula": "5(N/2) * ceil(log2(N))",
      "cost_formula_latex": "$5(N/2) \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/irfftn/",
      "detail_json_href": "/api-data/ops/fft-irfftn.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.irfftn",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.irfftn",
      "notes": "Inverse N-D real FFT. Cost: 5*(N//2)*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.irfftn",
      "slug": "fft-irfftn",
      "status": "supported",
      "summary": "Computes the inverse of `rfftn`.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/rfft",
      "category": "counted_custom",
      "cost_formula": "5(n/2) * ceil(log2(n))",
      "cost_formula_latex": "$5(n/2) \\cdot \\lceil\\log_2 n\\rceil$",
      "detail_href": "/docs/api/numpy/fft/rfft/",
      "detail_json_href": "/api-data/ops/fft-rfft.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.rfft",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.rfft",
      "notes": "1-D real FFT. Cost: 5*(n//2)*ceil(log2(n)) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.rfft",
      "slug": "fft-rfft",
      "status": "supported",
      "summary": "Compute the one-dimensional discrete Fourier Transform for real input.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/rfft2",
      "category": "counted_custom",
      "cost_formula": "5(N/2) * ceil(log2(N))",
      "cost_formula_latex": "$5(N/2) \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/rfft2/",
      "detail_json_href": "/api-data/ops/fft-rfft2.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.rfft2",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.rfft2",
      "notes": "2-D real FFT. Cost: 5*(N//2)*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.rfft2",
      "slug": "fft-rfft2",
      "status": "supported",
      "summary": "Compute the 2-dimensional FFT of a real array.",
      "weight": 1.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/rfftfreq",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/fft/rfftfreq/",
      "detail_json_href": "/api-data/ops/fft-rfftfreq.json",
      "display_type": "free",
      "flopscope_ref": "fnp.fft.rfftfreq",
      "free": true,
      "module": "numpy.fft",
      "name": "fft.rfftfreq",
      "notes": "Real FFT sample frequencies. No arithmetic; returns index array.",
      "numpy_ref": "np.fft.rfftfreq",
      "slug": "fft-rfftfreq",
      "status": "supported",
      "summary": "Return the Discrete Fourier Transform sample frequencies (for usage with rfft, irfft).",
      "weight": 0.0
    },
    {
      "area": "fft",
      "blocked": false,
      "canonical_path": "numpy/fft/rfftn",
      "category": "counted_custom",
      "cost_formula": "5(N/2) * ceil(log2(N))",
      "cost_formula_latex": "$5(N/2) \\cdot \\lceil\\log_2 N\\rceil$",
      "detail_href": "/docs/api/numpy/fft/rfftn/",
      "detail_json_href": "/api-data/ops/fft-rfftn.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fft.rfftn",
      "free": false,
      "module": "numpy.fft",
      "name": "fft.rfftn",
      "notes": "N-D real FFT. Cost: 5*(N//2)*ceil(log2(N)), N=prod(s) (Cooley-Tukey radix-2; Van Loan 1992 \u00a71.4).",
      "numpy_ref": "np.fft.rfftn",
      "slug": "fft-rfftn",
      "status": "supported",
      "summary": "Compute the N-dimensional discrete Fourier Transform for real input.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fill-diagonal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/fill-diagonal/",
      "detail_json_href": "/api-data/ops/fill_diagonal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fill_diagonal",
      "free": false,
      "module": "numpy",
      "name": "fill_diagonal",
      "notes": "Fill main diagonal of given array. Cost: min(m,n).",
      "numpy_ref": "np.fill_diagonal",
      "slug": "fill_diagonal",
      "status": "supported",
      "summary": "Fill the main diagonal of the given array of any dimensionality.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/flatnonzero",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/flatnonzero/",
      "detail_json_href": "/api-data/ops/flatnonzero.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.flatnonzero",
      "free": false,
      "module": "numpy",
      "name": "flatnonzero",
      "notes": "Return indices of non-zero elements in flattened array. Cost: numel(input).",
      "numpy_ref": "np.flatnonzero",
      "slug": "flatnonzero",
      "status": "supported",
      "summary": "Return indices that are non-zero in the flattened version of a.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/flip",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/flip/",
      "detail_json_href": "/api-data/ops/flip.json",
      "display_type": "free",
      "flopscope_ref": "fnp.flip",
      "free": true,
      "module": "numpy",
      "name": "flip",
      "notes": "Reverse order of elements along axis.",
      "numpy_ref": "np.flip",
      "slug": "flip",
      "status": "supported",
      "summary": "Reverse the order of elements in an array along the given axis.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fliplr",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/fliplr/",
      "detail_json_href": "/api-data/ops/fliplr.json",
      "display_type": "free",
      "flopscope_ref": "fnp.fliplr",
      "free": true,
      "module": "numpy",
      "name": "fliplr",
      "notes": "Flip array left-right.",
      "numpy_ref": "np.fliplr",
      "slug": "fliplr",
      "status": "supported",
      "summary": "Reverse the order of elements along axis 1 (left/right).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/flipud",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/flipud/",
      "detail_json_href": "/api-data/ops/flipud.json",
      "display_type": "free",
      "flopscope_ref": "fnp.flipud",
      "free": true,
      "module": "numpy",
      "name": "flipud",
      "notes": "Flip array up-down.",
      "numpy_ref": "np.flipud",
      "slug": "flipud",
      "status": "supported",
      "summary": "Reverse the order of elements along axis 0 (up/down).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/float-power",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/float-power/",
      "detail_json_href": "/api-data/ops/float_power.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.float_power",
      "free": false,
      "module": "numpy",
      "name": "float_power",
      "notes": "Element-wise exponentiation in float64.",
      "numpy_ref": "np.float_power",
      "slug": "float_power",
      "status": "supported",
      "summary": "First array elements raised to powers from second array, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/floor",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/floor/",
      "detail_json_href": "/api-data/ops/floor.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.floor",
      "free": false,
      "module": "numpy",
      "name": "floor",
      "notes": "Element-wise floor.",
      "numpy_ref": "np.floor",
      "slug": "floor",
      "status": "supported",
      "summary": "Return the floor of the input, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/floor-divide",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/floor-divide/",
      "detail_json_href": "/api-data/ops/floor_divide.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.floor_divide",
      "free": false,
      "module": "numpy",
      "name": "floor_divide",
      "notes": "Element-wise floor division.",
      "numpy_ref": "np.floor_divide",
      "slug": "floor_divide",
      "status": "supported",
      "summary": "Return the largest integer smaller or equal to the division of the inputs. It is equivalent to the Python ``//`` operator and pairs with the Python ``%`` (`remainder`), function so that ``a = a % b + b * (a // b)`` up to roundoff.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fmax",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/fmax/",
      "detail_json_href": "/api-data/ops/fmax.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.fmax",
      "free": false,
      "module": "numpy",
      "name": "fmax",
      "notes": "Element-wise maximum ignoring NaN.",
      "numpy_ref": "np.fmax",
      "slug": "fmax",
      "status": "supported",
      "summary": "Element-wise maximum of array elements.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fmin",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/fmin/",
      "detail_json_href": "/api-data/ops/fmin.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.fmin",
      "free": false,
      "module": "numpy",
      "name": "fmin",
      "notes": "Element-wise minimum ignoring NaN.",
      "numpy_ref": "np.fmin",
      "slug": "fmin",
      "status": "supported",
      "summary": "Element-wise minimum of array elements.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fmod",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/fmod/",
      "detail_json_href": "/api-data/ops/fmod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.fmod",
      "free": false,
      "module": "numpy",
      "name": "fmod",
      "notes": "Element-wise C-style fmod (remainder toward zero).",
      "numpy_ref": "np.fmod",
      "slug": "fmod",
      "status": "supported",
      "summary": "Returns the element-wise remainder of division.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/frexp",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/frexp/",
      "detail_json_href": "/api-data/ops/frexp.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.frexp",
      "free": false,
      "module": "numpy",
      "name": "frexp",
      "notes": "Decompose x into mantissa and exponent element-wise.",
      "numpy_ref": "np.frexp",
      "slug": "frexp",
      "status": "supported",
      "summary": "Decompose the elements of x into mantissa and twos exponent.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/from-dlpack",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/from-dlpack/",
      "detail_json_href": "/api-data/ops/from_dlpack.json",
      "display_type": "free",
      "flopscope_ref": "fnp.from_dlpack",
      "free": true,
      "module": "numpy",
      "name": "from_dlpack",
      "notes": "Create ndarray from DLPack object (zero-copy). Cost: numel(output).",
      "numpy_ref": "np.from_dlpack",
      "slug": "from_dlpack",
      "status": "supported",
      "summary": "Create a NumPy array from an object implementing the ``__dlpack__`` protocol. Generally, the returned NumPy array is a view of the input object. See [1]_ and [2]_ for more details.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/frombuffer",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/frombuffer/",
      "detail_json_href": "/api-data/ops/frombuffer.json",
      "display_type": "free",
      "flopscope_ref": "fnp.frombuffer",
      "free": true,
      "module": "numpy",
      "name": "frombuffer",
      "notes": "Interpret buffer as 1-D array. Cost: numel(output).",
      "numpy_ref": "np.frombuffer",
      "slug": "frombuffer",
      "status": "supported",
      "summary": "Interpret a buffer as a 1-dimensional array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fromfunction",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/fromfunction/",
      "detail_json_href": "/api-data/ops/fromfunction.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fromfunction",
      "free": false,
      "module": "numpy",
      "name": "fromfunction",
      "notes": "Construct array by executing function over each coordinate. Cost: numel(output).",
      "numpy_ref": "np.fromfunction",
      "slug": "fromfunction",
      "status": "supported",
      "summary": "Construct an array by executing a function over each coordinate.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/fromiter",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/fromiter/",
      "detail_json_href": "/api-data/ops/fromiter.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.fromiter",
      "free": false,
      "module": "numpy",
      "name": "fromiter",
      "notes": "Create array from an iterable. Cost: numel(output).",
      "numpy_ref": "np.fromiter",
      "slug": "fromiter",
      "status": "supported",
      "summary": "Create a new 1-dimensional array from an iterable object.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/full",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/full/",
      "detail_json_href": "/api-data/ops/full.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.full",
      "free": false,
      "module": "numpy",
      "name": "full",
      "notes": "Create array filled with scalar value. Cost: num copied.",
      "numpy_ref": "np.full",
      "slug": "full",
      "status": "supported",
      "summary": "Return a new array of given shape and type, filled with `fill_value`.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/full-like",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/full-like/",
      "detail_json_href": "/api-data/ops/full_like.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.full_like",
      "free": false,
      "module": "numpy",
      "name": "full_like",
      "notes": "Array filled with scalar, same shape/type as input. Cost: numel(output).",
      "numpy_ref": "np.full_like",
      "slug": "full_like",
      "status": "supported",
      "summary": "Return a full array with the same shape and type as a given array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/gcd",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/gcd/",
      "detail_json_href": "/api-data/ops/gcd.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.gcd",
      "free": false,
      "module": "numpy",
      "name": "gcd",
      "notes": "Element-wise greatest common divisor.",
      "numpy_ref": "np.gcd",
      "slug": "gcd",
      "status": "supported",
      "summary": "Returns the greatest common divisor of ``|x1|`` and ``|x2|``",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/geomspace",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/geomspace/",
      "detail_json_href": "/api-data/ops/geomspace.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.geomspace",
      "free": false,
      "module": "numpy",
      "name": "geomspace",
      "notes": "Geometric-spaced generation; cost = num.",
      "numpy_ref": "np.geomspace",
      "slug": "geomspace",
      "status": "supported",
      "summary": "Return numbers spaced evenly on a log scale (a geometric progression).",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/gradient",
      "category": "counted_custom",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/gradient/",
      "detail_json_href": "/api-data/ops/gradient.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.gradient",
      "free": false,
      "module": "numpy",
      "name": "gradient",
      "notes": "Gradient using central differences.",
      "numpy_ref": "np.gradient",
      "slug": "gradient",
      "status": "supported",
      "summary": "Return the gradient of an N-dimensional array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/greater",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/greater/",
      "detail_json_href": "/api-data/ops/greater.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.greater",
      "free": false,
      "module": "numpy",
      "name": "greater",
      "notes": "Element-wise x1 > x2.",
      "numpy_ref": "np.greater",
      "slug": "greater",
      "status": "supported",
      "summary": "Return the truth value of (x1 > x2) element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/greater-equal",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/greater-equal/",
      "detail_json_href": "/api-data/ops/greater_equal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.greater_equal",
      "free": false,
      "module": "numpy",
      "name": "greater_equal",
      "notes": "Element-wise x1 >= x2.",
      "numpy_ref": "np.greater_equal",
      "slug": "greater_equal",
      "status": "supported",
      "summary": "Return the truth value of (x1 >= x2) element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/hamming",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/hamming/",
      "detail_json_href": "/api-data/ops/hamming.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.hamming",
      "free": false,
      "module": "flopscope._window",
      "name": "hamming",
      "notes": "Hamming window. Cost: n (one cosine per sample).",
      "numpy_ref": "np.hamming",
      "slug": "hamming",
      "status": "supported",
      "summary": "Return the Hamming window.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/hanning",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/hanning/",
      "detail_json_href": "/api-data/ops/hanning.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.hanning",
      "free": false,
      "module": "flopscope._window",
      "name": "hanning",
      "notes": "Hanning window. Cost: n (one cosine per sample).",
      "numpy_ref": "np.hanning",
      "slug": "hanning",
      "status": "supported",
      "summary": "Return the Hanning window.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/heaviside",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/heaviside/",
      "detail_json_href": "/api-data/ops/heaviside.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.heaviside",
      "free": false,
      "module": "numpy",
      "name": "heaviside",
      "notes": "Heaviside step function element-wise.",
      "numpy_ref": "np.heaviside",
      "slug": "heaviside",
      "status": "supported",
      "summary": "Compute the Heaviside step function.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/histogram",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/histogram/",
      "detail_json_href": "/api-data/ops/histogram.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.histogram",
      "free": false,
      "module": "numpy",
      "name": "histogram",
      "notes": "Binning; cost = n*ceil(log2(bins)).",
      "numpy_ref": "np.histogram",
      "slug": "histogram",
      "status": "supported",
      "summary": "Compute the histogram of a dataset.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/histogram2d",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/histogram2d/",
      "detail_json_href": "/api-data/ops/histogram2d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.histogram2d",
      "free": false,
      "module": "numpy",
      "name": "histogram2d",
      "notes": "2D binning; cost = n*(ceil(log2(bx))+ceil(log2(by))).",
      "numpy_ref": "np.histogram2d",
      "slug": "histogram2d",
      "status": "supported",
      "summary": "Compute the bi-dimensional histogram of two data samples.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/histogram-bin-edges",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/histogram-bin-edges/",
      "detail_json_href": "/api-data/ops/histogram_bin_edges.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.histogram_bin_edges",
      "free": false,
      "module": "numpy",
      "name": "histogram_bin_edges",
      "notes": "Bin edge computation; cost = numel(a).",
      "numpy_ref": "np.histogram_bin_edges",
      "slug": "histogram_bin_edges",
      "status": "supported",
      "summary": "Function to calculate only the edges of the bins used by the `histogram` function.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/histogramdd",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/histogramdd/",
      "detail_json_href": "/api-data/ops/histogramdd.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.histogramdd",
      "free": false,
      "module": "numpy",
      "name": "histogramdd",
      "notes": "ND binning; cost = n*sum(ceil(log2(b_i))).",
      "numpy_ref": "np.histogramdd",
      "slug": "histogramdd",
      "status": "supported",
      "summary": "Compute the multidimensional histogram of some data.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/hsplit",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/hsplit/",
      "detail_json_href": "/api-data/ops/hsplit.json",
      "display_type": "free",
      "flopscope_ref": "fnp.hsplit",
      "free": true,
      "module": "numpy",
      "name": "hsplit",
      "notes": "Split array into columns.",
      "numpy_ref": "np.hsplit",
      "slug": "hsplit",
      "status": "supported",
      "summary": "Split an array into multiple sub-arrays horizontally (column-wise).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/hstack",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/hstack/",
      "detail_json_href": "/api-data/ops/hstack.json",
      "display_type": "free",
      "flopscope_ref": "fnp.hstack",
      "free": true,
      "module": "numpy",
      "name": "hstack",
      "notes": "Stack arrays horizontally.",
      "numpy_ref": "np.hstack",
      "slug": "hstack",
      "status": "supported",
      "summary": "Stack arrays in sequence horizontally (column wise).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/hypot",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/hypot/",
      "detail_json_href": "/api-data/ops/hypot.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.hypot",
      "free": false,
      "module": "numpy",
      "name": "hypot",
      "notes": "Element-wise Euclidean norm sqrt(x1^2 + x2^2).",
      "numpy_ref": "np.hypot",
      "slug": "hypot",
      "status": "supported",
      "summary": "Given the \"legs\" of a right triangle, return its hypotenuse.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/i0",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/i0/",
      "detail_json_href": "/api-data/ops/i0.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.i0",
      "free": false,
      "module": "numpy",
      "name": "i0",
      "notes": "Modified Bessel function of order 0, element-wise.",
      "numpy_ref": "np.i0",
      "slug": "i0",
      "status": "supported",
      "summary": "Modified Bessel function of the first kind, order 0.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/identity",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/identity/",
      "detail_json_href": "/api-data/ops/identity.json",
      "display_type": "free",
      "flopscope_ref": "fnp.identity",
      "free": true,
      "module": "numpy",
      "name": "identity",
      "notes": "Create square identity matrix.",
      "numpy_ref": "np.identity",
      "slug": "identity",
      "status": "supported",
      "summary": "Return the identity array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/imag",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/imag/",
      "detail_json_href": "/api-data/ops/imag.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.imag",
      "free": false,
      "module": "numpy",
      "name": "imag",
      "notes": "Return imaginary part of complex array.",
      "numpy_ref": "np.imag",
      "slug": "imag",
      "status": "supported",
      "summary": "Return the imaginary part of the complex argument.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/in1d",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/in1d/",
      "detail_json_href": "/api-data/ops/in1d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.in1d",
      "free": false,
      "module": "numpy",
      "name": "in1d",
      "notes": "Set membership; cost = (n+m)*ceil(log2(n+m)). Removed in numpy 2.4; use `isin` instead.",
      "numpy_ref": "np.in1d",
      "slug": "in1d",
      "status": "supported",
      "summary": "Test whether each element of a 1-D array is also present in a second array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/indices",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/indices/",
      "detail_json_href": "/api-data/ops/indices.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.indices",
      "free": false,
      "module": "numpy",
      "name": "indices",
      "notes": "Return array representing indices of a grid. Cost: numel(output).",
      "numpy_ref": "np.indices",
      "slug": "indices",
      "status": "supported",
      "summary": "Return an array representing the indices of a grid.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/inner",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/inner/",
      "detail_json_href": "/api-data/ops/inner.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.inner",
      "free": false,
      "module": "numpy",
      "name": "inner",
      "notes": "Inner product; cost = N (FMA=1).",
      "numpy_ref": "np.inner",
      "slug": "inner",
      "status": "supported",
      "summary": "Inner product of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/insert",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/insert/",
      "detail_json_href": "/api-data/ops/insert.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.insert",
      "free": false,
      "module": "numpy",
      "name": "insert",
      "notes": "Insert values along axis before given indices. Cost: numel(values).",
      "numpy_ref": "np.insert",
      "slug": "insert",
      "status": "supported",
      "summary": "Insert values along the given axis before the given indices.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/interp",
      "category": "counted_custom",
      "cost_formula": "n * log(m)",
      "cost_formula_latex": "$n \\cdot \\log m$",
      "detail_href": "/docs/api/numpy/interp/",
      "detail_json_href": "/api-data/ops/interp.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.interp",
      "free": false,
      "module": "numpy",
      "name": "interp",
      "notes": "1-D linear interpolation.",
      "numpy_ref": "np.interp",
      "slug": "interp",
      "status": "supported",
      "summary": "One-dimensional linear interpolation for monotonically increasing sample points.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/intersect1d",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/intersect1d/",
      "detail_json_href": "/api-data/ops/intersect1d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.intersect1d",
      "free": false,
      "module": "numpy",
      "name": "intersect1d",
      "notes": "Set intersection; cost = (n+m)*ceil(log2(n+m)).",
      "numpy_ref": "np.intersect1d",
      "slug": "intersect1d",
      "status": "supported",
      "summary": "Find the intersection of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/invert",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/invert/",
      "detail_json_href": "/api-data/ops/invert.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.invert",
      "free": false,
      "module": "numpy",
      "name": "invert",
      "notes": "Bitwise NOT element-wise.",
      "numpy_ref": "np.invert",
      "slug": "invert",
      "status": "supported",
      "summary": "Compute bit-wise inversion, or bit-wise NOT, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isclose",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/isclose/",
      "detail_json_href": "/api-data/ops/isclose.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.isclose",
      "free": false,
      "module": "numpy",
      "name": "isclose",
      "notes": "Element-wise approximate equality test.",
      "numpy_ref": "np.isclose",
      "slug": "isclose",
      "status": "supported",
      "summary": "Returns a boolean array where two arrays are element-wise equal within a tolerance.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/iscomplex",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/iscomplex/",
      "detail_json_href": "/api-data/ops/iscomplex.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.iscomplex",
      "free": false,
      "module": "numpy",
      "name": "iscomplex",
      "notes": "Test if element is complex element-wise.",
      "numpy_ref": "np.iscomplex",
      "slug": "iscomplex",
      "status": "supported",
      "summary": "Returns a bool array, where True if input element is complex.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/iscomplexobj",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/iscomplexobj/",
      "detail_json_href": "/api-data/ops/iscomplexobj.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.iscomplexobj",
      "free": false,
      "module": "numpy",
      "name": "iscomplexobj",
      "notes": "Return True if input is a complex type or array.",
      "numpy_ref": "np.iscomplexobj",
      "slug": "iscomplexobj",
      "status": "supported",
      "summary": "Check for a complex type or an array of complex numbers.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isdtype",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/isdtype/",
      "detail_json_href": "/api-data/ops/isdtype.json",
      "display_type": "free",
      "flopscope_ref": "fnp.isdtype",
      "free": true,
      "module": "numpy",
      "name": "isdtype",
      "notes": "Return True if array or dtype is of specified kind (NumPy 2.x).",
      "numpy_ref": "np.isdtype",
      "slug": "isdtype",
      "status": "supported",
      "summary": "Determine if a provided dtype is of a specified data type ``kind``.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isfinite",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/isfinite/",
      "detail_json_href": "/api-data/ops/isfinite.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.isfinite",
      "free": false,
      "module": "numpy",
      "name": "isfinite",
      "notes": "Test for finite values element-wise. Cost: numel(input).",
      "numpy_ref": "np.isfinite",
      "slug": "isfinite",
      "status": "supported",
      "summary": "Test element-wise for finiteness (not infinity and not Not a Number).",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isfortran",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/isfortran/",
      "detail_json_href": "/api-data/ops/isfortran.json",
      "display_type": "free",
      "flopscope_ref": "fnp.isfortran",
      "free": true,
      "module": "numpy",
      "name": "isfortran",
      "notes": "Return True if array is Fortran contiguous.",
      "numpy_ref": "np.isfortran",
      "slug": "isfortran",
      "status": "supported",
      "summary": "Check if the array is Fortran contiguous but *not* C contiguous.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isin",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/isin/",
      "detail_json_href": "/api-data/ops/isin.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.isin",
      "free": false,
      "module": "numpy",
      "name": "isin",
      "notes": "Set membership; cost = (n+m)*ceil(log2(n+m)).",
      "numpy_ref": "np.isin",
      "slug": "isin",
      "status": "supported",
      "summary": "Calculates ``element in test_elements``, broadcasting over `element` only. Returns a boolean array of the same shape as `element` that is True where an element of `element` is in `test_elements` and False otherwise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isinf",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/isinf/",
      "detail_json_href": "/api-data/ops/isinf.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.isinf",
      "free": false,
      "module": "numpy",
      "name": "isinf",
      "notes": "Test for infinity element-wise. Cost: numel(input).",
      "numpy_ref": "np.isinf",
      "slug": "isinf",
      "status": "supported",
      "summary": "Test element-wise for positive or negative infinity.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isnan",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/isnan/",
      "detail_json_href": "/api-data/ops/isnan.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.isnan",
      "free": false,
      "module": "numpy",
      "name": "isnan",
      "notes": "Test for NaN element-wise. Cost: numel(input).",
      "numpy_ref": "np.isnan",
      "slug": "isnan",
      "status": "supported",
      "summary": "Test element-wise for NaN and return result as a boolean array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isneginf",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/isneginf/",
      "detail_json_href": "/api-data/ops/isneginf.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.isneginf",
      "free": false,
      "module": "numpy",
      "name": "isneginf",
      "notes": "Test for negative infinity element-wise.",
      "numpy_ref": "np.isneginf",
      "slug": "isneginf",
      "status": "supported",
      "summary": "Test element-wise for negative infinity, return result as bool array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isposinf",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/isposinf/",
      "detail_json_href": "/api-data/ops/isposinf.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.isposinf",
      "free": false,
      "module": "numpy",
      "name": "isposinf",
      "notes": "Test for positive infinity element-wise.",
      "numpy_ref": "np.isposinf",
      "slug": "isposinf",
      "status": "supported",
      "summary": "Test element-wise for positive infinity, return result as bool array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isreal",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/isreal/",
      "detail_json_href": "/api-data/ops/isreal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.isreal",
      "free": false,
      "module": "numpy",
      "name": "isreal",
      "notes": "Test if element is real (imag == 0) element-wise.",
      "numpy_ref": "np.isreal",
      "slug": "isreal",
      "status": "supported",
      "summary": "Returns a bool array, where True if input element is real.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isrealobj",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/isrealobj/",
      "detail_json_href": "/api-data/ops/isrealobj.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.isrealobj",
      "free": false,
      "module": "numpy",
      "name": "isrealobj",
      "notes": "Return True if x is a not complex type or array.",
      "numpy_ref": "np.isrealobj",
      "slug": "isrealobj",
      "status": "supported",
      "summary": "Return True if x is a not complex type or an array of complex numbers.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/isscalar",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/isscalar/",
      "detail_json_href": "/api-data/ops/isscalar.json",
      "display_type": "free",
      "flopscope_ref": "fnp.isscalar",
      "free": true,
      "module": "numpy",
      "name": "isscalar",
      "notes": "Return True if input is a scalar.",
      "numpy_ref": "np.isscalar",
      "slug": "isscalar",
      "status": "supported",
      "summary": "Returns True if the type of `element` is a scalar type.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/issubdtype",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/issubdtype/",
      "detail_json_href": "/api-data/ops/issubdtype.json",
      "display_type": "free",
      "flopscope_ref": "fnp.issubdtype",
      "free": true,
      "module": "numpy",
      "name": "issubdtype",
      "notes": "Return True if first argument is lower in type hierarchy.",
      "numpy_ref": "np.issubdtype",
      "slug": "issubdtype",
      "status": "supported",
      "summary": "Returns True if first argument is a typecode lower/equal in type hierarchy.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/iterable",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/iterable/",
      "detail_json_href": "/api-data/ops/iterable.json",
      "display_type": "free",
      "flopscope_ref": "fnp.iterable",
      "free": true,
      "module": "numpy",
      "name": "iterable",
      "notes": "Return True if object is iterable.",
      "numpy_ref": "np.iterable",
      "slug": "iterable",
      "status": "supported",
      "summary": "Check whether or not an object can be iterated over.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ix-",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/ix-/",
      "detail_json_href": "/api-data/ops/ix_.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.ix_",
      "free": false,
      "module": "numpy",
      "name": "ix_",
      "notes": "Construct open mesh from multiple sequences. Cost: numel(output).",
      "numpy_ref": "np.ix_",
      "slug": "ix_",
      "status": "supported",
      "summary": "Construct an open mesh from multiple sequences.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/kaiser",
      "category": "counted_custom",
      "cost_formula": "3n",
      "cost_formula_latex": "$3n$",
      "detail_href": "/docs/api/numpy/kaiser/",
      "detail_json_href": "/api-data/ops/kaiser.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.kaiser",
      "free": false,
      "module": "flopscope._window",
      "name": "kaiser",
      "notes": "Kaiser window. Cost: 3*n (Bessel function eval per sample).",
      "numpy_ref": "np.kaiser",
      "slug": "kaiser",
      "status": "supported",
      "summary": "Return the Kaiser window.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/kron",
      "category": "counted_custom",
      "cost_formula": "m1*m2 * n1*n2",
      "cost_formula_latex": "$m_1 m_2 \\cdot n_1 n_2$",
      "detail_href": "/docs/api/numpy/kron/",
      "detail_json_href": "/api-data/ops/kron.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.kron",
      "free": false,
      "module": "numpy",
      "name": "kron",
      "notes": "Kronecker product; cost proportional to output size.",
      "numpy_ref": "np.kron",
      "slug": "kron",
      "status": "supported",
      "summary": "Kronecker product of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/lcm",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/lcm/",
      "detail_json_href": "/api-data/ops/lcm.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.lcm",
      "free": false,
      "module": "numpy",
      "name": "lcm",
      "notes": "Element-wise least common multiple.",
      "numpy_ref": "np.lcm",
      "slug": "lcm",
      "status": "supported",
      "summary": "Returns the lowest common multiple of ``|x1|`` and ``|x2|``",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ldexp",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/ldexp/",
      "detail_json_href": "/api-data/ops/ldexp.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.ldexp",
      "free": false,
      "module": "numpy",
      "name": "ldexp",
      "notes": "Return x1 * 2**x2 element-wise.",
      "numpy_ref": "np.ldexp",
      "slug": "ldexp",
      "status": "supported",
      "summary": "Returns x1 * 2**x2, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/left-shift",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/left-shift/",
      "detail_json_href": "/api-data/ops/left_shift.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.left_shift",
      "free": false,
      "module": "numpy",
      "name": "left_shift",
      "notes": "Element-wise left bit shift (legacy name).",
      "numpy_ref": "np.left_shift",
      "slug": "left_shift",
      "status": "supported",
      "summary": "Shift the bits of an integer to the left.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/less",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/less/",
      "detail_json_href": "/api-data/ops/less.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.less",
      "free": false,
      "module": "numpy",
      "name": "less",
      "notes": "Element-wise x1 < x2.",
      "numpy_ref": "np.less",
      "slug": "less",
      "status": "supported",
      "summary": "Return the truth value of (x1 < x2) element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/less-equal",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/less-equal/",
      "detail_json_href": "/api-data/ops/less_equal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.less_equal",
      "free": false,
      "module": "numpy",
      "name": "less_equal",
      "notes": "Element-wise x1 <= x2.",
      "numpy_ref": "np.less_equal",
      "slug": "less_equal",
      "status": "supported",
      "summary": "Return the truth value of (x1 <= x2) element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/lexsort",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/lexsort/",
      "detail_json_href": "/api-data/ops/lexsort.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.lexsort",
      "free": false,
      "module": "numpy",
      "name": "lexsort",
      "notes": "Multi-key sort; cost = k*n*ceil(log2(n)).",
      "numpy_ref": "np.lexsort",
      "slug": "lexsort",
      "status": "supported",
      "summary": "Perform an indirect stable sort using a sequence of keys.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/cholesky",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/cholesky/",
      "detail_json_href": "/api-data/ops/linalg-cholesky.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.cholesky",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.cholesky",
      "notes": "Cholesky decomposition. Cost: $n^3$.",
      "numpy_ref": "np.linalg.cholesky",
      "slug": "linalg-cholesky",
      "status": "supported",
      "summary": "Cholesky decomposition.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/cond",
      "category": "counted_custom",
      "cost_formula": "m * n * min(m,n)",
      "cost_formula_latex": "$m \\cdot n \\cdot \\min(m,n)$",
      "detail_href": "/docs/api/numpy/linalg/cond/",
      "detail_json_href": "/api-data/ops/linalg-cond.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.cond",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.cond",
      "notes": "Condition number. Cost: m*n*min(m,n) (via SVD).",
      "numpy_ref": "np.linalg.cond",
      "slug": "linalg-cond",
      "status": "supported",
      "summary": "Compute the condition number of a matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/cross",
      "category": "counted_custom",
      "cost_formula": "delegates to flops.cross",
      "cost_formula_latex": "delegates to `cross`",
      "detail_href": "/docs/api/numpy/linalg/cross/",
      "detail_json_href": "/api-data/ops/linalg-cross.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.cross",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.cross",
      "notes": "Delegates to `fnp.cross` which charges `numel(output)` FLOPs.",
      "numpy_ref": "np.linalg.cross",
      "slug": "linalg-cross",
      "status": "supported",
      "summary": "Returns the cross product of 3-element vectors.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/det",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/det/",
      "detail_json_href": "/api-data/ops/linalg-det.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.det",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.det",
      "notes": "Determinant. Cost: $n^3$.",
      "numpy_ref": "np.linalg.det",
      "slug": "linalg-det",
      "status": "supported",
      "summary": "Compute the determinant of an array.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/diagonal",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/linalg/diagonal/",
      "detail_json_href": "/api-data/ops/linalg-diagonal.json",
      "display_type": "free",
      "flopscope_ref": "fnp.linalg.diagonal",
      "free": true,
      "module": "numpy.linalg",
      "name": "linalg.diagonal",
      "notes": "View of diagonal \u2014 delegates to flopscope.diagonal. Cost: 0 FLOPs.",
      "numpy_ref": "np.linalg.diagonal",
      "slug": "linalg-diagonal",
      "status": "supported",
      "summary": "Returns specified diagonals of a matrix (or a stack of matrices) ``x``.",
      "weight": 0.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/eig",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/eig/",
      "detail_json_href": "/api-data/ops/linalg-eig.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.eig",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.eig",
      "notes": "Eigendecomposition. Cost: $n^3$.",
      "numpy_ref": "np.linalg.eig",
      "slug": "linalg-eig",
      "status": "supported",
      "summary": "Compute the eigenvalues and right eigenvectors of a square array.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/eigh",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/eigh/",
      "detail_json_href": "/api-data/ops/linalg-eigh.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.eigh",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.eigh",
      "notes": "Symmetric eigendecomposition. Cost: $n^3$.",
      "numpy_ref": "np.linalg.eigh",
      "slug": "linalg-eigh",
      "status": "supported",
      "summary": "Return the eigenvalues and eigenvectors of a complex Hermitian (conjugate symmetric) or a real symmetric matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/eigvals",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/eigvals/",
      "detail_json_href": "/api-data/ops/linalg-eigvals.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.eigvals",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.eigvals",
      "notes": "Eigenvalues only. Cost: $n^3$.",
      "numpy_ref": "np.linalg.eigvals",
      "slug": "linalg-eigvals",
      "status": "supported",
      "summary": "Compute the eigenvalues of a general matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/eigvalsh",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/eigvalsh/",
      "detail_json_href": "/api-data/ops/linalg-eigvalsh.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.eigvalsh",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.eigvalsh",
      "notes": "Symmetric eigenvalues. Cost: $n^3$.",
      "numpy_ref": "np.linalg.eigvalsh",
      "slug": "linalg-eigvalsh",
      "status": "supported",
      "summary": "Compute the eigenvalues of a complex Hermitian or real symmetric matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/inv",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/inv/",
      "detail_json_href": "/api-data/ops/linalg-inv.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.inv",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.inv",
      "notes": "Matrix inverse. Cost: $n^3$ (LU + solve).",
      "numpy_ref": "np.linalg.inv",
      "slug": "linalg-inv",
      "status": "supported",
      "summary": "Compute the inverse of a matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/lstsq",
      "category": "counted_custom",
      "cost_formula": "m * n * min(m,n)",
      "cost_formula_latex": "$m \\cdot n \\cdot \\min(m,n)$",
      "detail_href": "/docs/api/numpy/linalg/lstsq/",
      "detail_json_href": "/api-data/ops/linalg-lstsq.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.lstsq",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.lstsq",
      "notes": "Least squares. Cost: m*n*min(m,n) (LAPACK gelsd/SVD).",
      "numpy_ref": "np.linalg.lstsq",
      "slug": "linalg-lstsq",
      "status": "supported",
      "summary": "Return the least-squares solution to a linear matrix equation.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/matmul",
      "category": "counted_custom",
      "cost_formula": "delegates to flops.matmul",
      "cost_formula_latex": "delegates to `matmul`",
      "detail_href": "/docs/api/numpy/linalg/matmul/",
      "detail_json_href": "/api-data/ops/linalg-matmul.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.matmul",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.matmul",
      "notes": "Delegates to `fnp.matmul` which charges `m*k*n` FLOPs (FMA=1).",
      "numpy_ref": "np.linalg.matmul",
      "slug": "linalg-matmul",
      "status": "supported",
      "summary": "Computes the matrix product.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/matrix-norm",
      "category": "counted_custom",
      "cost_formula": "depends on ord",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/linalg/matrix-norm/",
      "detail_json_href": "/api-data/ops/linalg-matrix_norm.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.matrix_norm",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.matrix_norm",
      "notes": "Matrix norm. Cost depends on ord: 2*numel for Frobenius, m*n*min(m,n) for ord=2.",
      "numpy_ref": "np.linalg.matrix_norm",
      "slug": "linalg-matrix_norm",
      "status": "supported",
      "summary": "Computes the matrix norm of a matrix (or a stack of matrices) ``x``.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/matrix-power",
      "category": "counted_custom",
      "cost_formula": "log2(k) * n^3",
      "cost_formula_latex": "$\\lfloor\\log_2 k\\rfloor \\cdot n^3$",
      "detail_href": "/docs/api/numpy/linalg/matrix-power/",
      "detail_json_href": "/api-data/ops/linalg-matrix_power.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.matrix_power",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.matrix_power",
      "notes": "Matrix power. Cost: $(\\lfloor\\log_2 k\\rfloor + \\text{popcount}(k) - 1) \\cdot n^3$ (exponentiation by squaring).",
      "numpy_ref": "np.linalg.matrix_power",
      "slug": "linalg-matrix_power",
      "status": "supported",
      "summary": "Raise a square matrix to the (integer) power `n`.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/matrix-rank",
      "category": "counted_custom",
      "cost_formula": "m * n * min(m,n)",
      "cost_formula_latex": "$m \\cdot n \\cdot \\min(m,n)$",
      "detail_href": "/docs/api/numpy/linalg/matrix-rank/",
      "detail_json_href": "/api-data/ops/linalg-matrix_rank.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.matrix_rank",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.matrix_rank",
      "notes": "Matrix rank. Cost: m*n*min(m,n) (via SVD).",
      "numpy_ref": "np.linalg.matrix_rank",
      "slug": "linalg-matrix_rank",
      "status": "supported",
      "summary": "Return matrix rank of array using SVD method",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/matrix-transpose",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/linalg/matrix-transpose/",
      "detail_json_href": "/api-data/ops/linalg-matrix_transpose.json",
      "display_type": "free",
      "flopscope_ref": "fnp.linalg.matrix_transpose",
      "free": true,
      "module": "numpy.linalg",
      "name": "linalg.matrix_transpose",
      "notes": "Transpose view \u2014 delegates to flopscope.matrix_transpose. Cost: 0 FLOPs.",
      "numpy_ref": "np.linalg.matrix_transpose",
      "slug": "linalg-matrix_transpose",
      "status": "supported",
      "summary": "Transposes a matrix (or a stack of matrices) ``x``.",
      "weight": 0.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/multi-dot",
      "category": "counted_custom",
      "cost_formula": "optimal chain cost",
      "cost_formula_latex": "optimal chain",
      "detail_href": "/docs/api/numpy/linalg/multi-dot/",
      "detail_json_href": "/api-data/ops/linalg-multi_dot.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.multi_dot",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.multi_dot",
      "notes": "Chain matmul. Cost: sum of optimal chain matmul costs (CLRS \u00a715.2).",
      "numpy_ref": "np.linalg.multi_dot",
      "slug": "linalg-multi_dot",
      "status": "supported",
      "summary": "Compute the dot product of two or more arrays in a single function call, while automatically selecting the fastest evaluation order.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/norm",
      "category": "counted_custom",
      "cost_formula": "depends on ord",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/linalg/norm/",
      "detail_json_href": "/api-data/ops/linalg-norm.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.norm",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.norm",
      "notes": "Norm. Cost depends on ord: numel for L1/inf, 2*numel for Frobenius, m*n*min(m,n) for ord=2.",
      "numpy_ref": "np.linalg.norm",
      "slug": "linalg-norm",
      "status": "supported",
      "summary": "Matrix or vector norm.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/outer",
      "category": "counted_custom",
      "cost_formula": "delegates to flops.outer",
      "cost_formula_latex": "delegates to `outer`",
      "detail_href": "/docs/api/numpy/linalg/outer/",
      "detail_json_href": "/api-data/ops/linalg-outer.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.outer",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.outer",
      "notes": "Delegates to `fnp.outer` which charges `m*n` FLOPs.",
      "numpy_ref": "np.linalg.outer",
      "slug": "linalg-outer",
      "status": "supported",
      "summary": "Compute the outer product of two vectors.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/pinv",
      "category": "counted_custom",
      "cost_formula": "m * n * min(m,n)",
      "cost_formula_latex": "$m \\cdot n \\cdot \\min(m,n)$",
      "detail_href": "/docs/api/numpy/linalg/pinv/",
      "detail_json_href": "/api-data/ops/linalg-pinv.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.pinv",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.pinv",
      "notes": "Pseudoinverse. Cost: m*n*min(m,n) (via SVD).",
      "numpy_ref": "np.linalg.pinv",
      "slug": "linalg-pinv",
      "status": "supported",
      "summary": "Compute the (Moore-Penrose) pseudo-inverse of a matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/qr",
      "category": "counted_custom",
      "cost_formula": "m * n * min(m,n)",
      "cost_formula_latex": "$m \\cdot n \\cdot \\min(m,n)$",
      "detail_href": "/docs/api/numpy/linalg/qr/",
      "detail_json_href": "/api-data/ops/linalg-qr.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.qr",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.qr",
      "notes": "QR decomposition. Cost: $m \\cdot n \\cdot \\min(m,n)$.",
      "numpy_ref": "np.linalg.qr",
      "slug": "linalg-qr",
      "status": "supported",
      "summary": "Compute the qr factorization of a matrix.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/slogdet",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/slogdet/",
      "detail_json_href": "/api-data/ops/linalg-slogdet.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.slogdet",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.slogdet",
      "notes": "Sign + log determinant. Cost: $n^3$.",
      "numpy_ref": "np.linalg.slogdet",
      "slug": "linalg-slogdet",
      "status": "supported",
      "summary": "Compute the sign and (natural) logarithm of the determinant of an array.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/solve",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/solve/",
      "detail_json_href": "/api-data/ops/linalg-solve.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.solve",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.solve",
      "notes": "Solve Ax=b. Cost: $n^3$.",
      "numpy_ref": "np.linalg.solve",
      "slug": "linalg-solve",
      "status": "supported",
      "summary": "Solve a linear matrix equation, or system of linear scalar equations.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/svd",
      "category": "counted_custom",
      "cost_formula": "m * n * k",
      "cost_formula_latex": "$m \\cdot n \\cdot k$",
      "detail_href": "/docs/api/numpy/linalg/svd/",
      "detail_json_href": "/api-data/ops/linalg-svd.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.svd",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.svd",
      "notes": "Singular value decomposition; cost ~ O(min(m,n)*m*n).",
      "numpy_ref": "np.linalg.svd",
      "slug": "linalg-svd",
      "status": "supported",
      "summary": "Singular Value Decomposition.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/svdvals",
      "category": "counted_custom",
      "cost_formula": "m * n * min(m,n)",
      "cost_formula_latex": "$m \\cdot n \\cdot \\min(m,n)$",
      "detail_href": "/docs/api/numpy/linalg/svdvals/",
      "detail_json_href": "/api-data/ops/linalg-svdvals.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.svdvals",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.svdvals",
      "notes": "Singular values only. Cost: m*n*min(m,n) (Golub-Reinsch).",
      "numpy_ref": "np.linalg.svdvals",
      "slug": "linalg-svdvals",
      "status": "supported",
      "summary": "Returns the singular values of a matrix (or a stack of matrices) ``x``. When x is a stack of matrices, the function will compute the singular values for each matrix in the stack.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/tensordot",
      "category": "counted_custom",
      "cost_formula": "delegates to flops.tensordot",
      "cost_formula_latex": "delegates to `tensordot`",
      "detail_href": "/docs/api/numpy/linalg/tensordot/",
      "detail_json_href": "/api-data/ops/linalg-tensordot.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.tensordot",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.tensordot",
      "notes": "Delegates to `fnp.tensordot` which charges FLOPs based on contraction.",
      "numpy_ref": "np.linalg.tensordot",
      "slug": "linalg-tensordot",
      "status": "supported",
      "summary": "Compute tensor dot product along specified axes.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/tensorinv",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/tensorinv/",
      "detail_json_href": "/api-data/ops/linalg-tensorinv.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.tensorinv",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.tensorinv",
      "notes": "Tensor inverse. Cost: $n^3$ after reshape (delegates to inv).",
      "numpy_ref": "np.linalg.tensorinv",
      "slug": "linalg-tensorinv",
      "status": "supported",
      "summary": "Compute the 'inverse' of an N-dimensional array.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/tensorsolve",
      "category": "counted_custom",
      "cost_formula": "n^3",
      "cost_formula_latex": "$n^3$",
      "detail_href": "/docs/api/numpy/linalg/tensorsolve/",
      "detail_json_href": "/api-data/ops/linalg-tensorsolve.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.tensorsolve",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.tensorsolve",
      "notes": "Tensor solve. Cost: $n^3$ after reshape (delegates to solve).",
      "numpy_ref": "np.linalg.tensorsolve",
      "slug": "linalg-tensorsolve",
      "status": "supported",
      "summary": "Solve the tensor equation ``a x = b`` for x.",
      "weight": 4.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/trace",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/linalg/trace/",
      "detail_json_href": "/api-data/ops/linalg-trace.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.trace",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.trace",
      "notes": "Matrix trace. Cost: n (sum of diagonal elements).",
      "numpy_ref": "np.linalg.trace",
      "slug": "linalg-trace",
      "status": "supported",
      "summary": "Returns the sum along the specified diagonals of a matrix (or a stack of matrices) ``x``.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/vecdot",
      "category": "counted_custom",
      "cost_formula": "delegates to flops.vecdot",
      "cost_formula_latex": "delegates to `vecdot`",
      "detail_href": "/docs/api/numpy/linalg/vecdot/",
      "detail_json_href": "/api-data/ops/linalg-vecdot.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.vecdot",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.vecdot",
      "notes": "Delegates to `fnp.vecdot` which charges `2*n` FLOPs.",
      "numpy_ref": "np.linalg.vecdot",
      "slug": "linalg-vecdot",
      "status": "supported",
      "summary": "Computes the vector dot product.",
      "weight": 1.0
    },
    {
      "area": "linalg",
      "blocked": false,
      "canonical_path": "numpy/linalg/vector-norm",
      "category": "counted_custom",
      "cost_formula": "numel",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/linalg/vector-norm/",
      "detail_json_href": "/api-data/ops/linalg-vector_norm.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linalg.vector_norm",
      "free": false,
      "module": "numpy.linalg",
      "name": "linalg.vector_norm",
      "notes": "Vector norm. Cost: numel (or 2*numel for general p-norm).",
      "numpy_ref": "np.linalg.vector_norm",
      "slug": "linalg-vector_norm",
      "status": "supported",
      "summary": "Computes the vector norm of a vector (or batch of vectors) ``x``.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/linspace",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/linspace/",
      "detail_json_href": "/api-data/ops/linspace.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.linspace",
      "free": false,
      "module": "numpy",
      "name": "linspace",
      "notes": "Return evenly spaced numbers over interval. Cost: numel(output).",
      "numpy_ref": "np.linspace",
      "slug": "linspace",
      "status": "supported",
      "summary": "Return evenly spaced numbers over a specified interval.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/log",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/log/",
      "detail_json_href": "/api-data/ops/log.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.log",
      "free": false,
      "module": "numpy",
      "name": "log",
      "notes": "Element-wise natural logarithm.",
      "numpy_ref": "np.log",
      "slug": "log",
      "status": "supported",
      "summary": "Natural logarithm, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/log10",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/log10/",
      "detail_json_href": "/api-data/ops/log10.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.log10",
      "free": false,
      "module": "numpy",
      "name": "log10",
      "notes": "Element-wise base-10 logarithm.",
      "numpy_ref": "np.log10",
      "slug": "log10",
      "status": "supported",
      "summary": "Return the base 10 logarithm of the input array, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/log1p",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/log1p/",
      "detail_json_href": "/api-data/ops/log1p.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.log1p",
      "free": false,
      "module": "numpy",
      "name": "log1p",
      "notes": "Element-wise log(1+x) (accurate near zero).",
      "numpy_ref": "np.log1p",
      "slug": "log1p",
      "status": "supported",
      "summary": "Return the natural logarithm of one plus the input array, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/log2",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/log2/",
      "detail_json_href": "/api-data/ops/log2.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.log2",
      "free": false,
      "module": "numpy",
      "name": "log2",
      "notes": "Element-wise base-2 logarithm.",
      "numpy_ref": "np.log2",
      "slug": "log2",
      "status": "supported",
      "summary": "Base-2 logarithm of `x`.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logaddexp",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/logaddexp/",
      "detail_json_href": "/api-data/ops/logaddexp.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.logaddexp",
      "free": false,
      "module": "numpy",
      "name": "logaddexp",
      "notes": "log(exp(x1) + exp(x2)) element-wise.",
      "numpy_ref": "np.logaddexp",
      "slug": "logaddexp",
      "status": "supported",
      "summary": "Logarithm of the sum of exponentiations of the inputs.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logaddexp2",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/logaddexp2/",
      "detail_json_href": "/api-data/ops/logaddexp2.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.logaddexp2",
      "free": false,
      "module": "numpy",
      "name": "logaddexp2",
      "notes": "log2(2**x1 + 2**x2) element-wise.",
      "numpy_ref": "np.logaddexp2",
      "slug": "logaddexp2",
      "status": "supported",
      "summary": "Logarithm of the sum of exponentiations of the inputs in base-2.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logical-and",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/logical-and/",
      "detail_json_href": "/api-data/ops/logical_and.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.logical_and",
      "free": false,
      "module": "numpy",
      "name": "logical_and",
      "notes": "Element-wise logical AND.",
      "numpy_ref": "np.logical_and",
      "slug": "logical_and",
      "status": "supported",
      "summary": "Compute the truth value of x1 AND x2 element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logical-not",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/logical-not/",
      "detail_json_href": "/api-data/ops/logical_not.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.logical_not",
      "free": false,
      "module": "numpy",
      "name": "logical_not",
      "notes": "Element-wise logical NOT.",
      "numpy_ref": "np.logical_not",
      "slug": "logical_not",
      "status": "supported",
      "summary": "Compute the truth value of NOT x element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logical-or",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/logical-or/",
      "detail_json_href": "/api-data/ops/logical_or.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.logical_or",
      "free": false,
      "module": "numpy",
      "name": "logical_or",
      "notes": "Element-wise logical OR.",
      "numpy_ref": "np.logical_or",
      "slug": "logical_or",
      "status": "supported",
      "summary": "Compute the truth value of x1 OR x2 element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logical-xor",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/logical-xor/",
      "detail_json_href": "/api-data/ops/logical_xor.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.logical_xor",
      "free": false,
      "module": "numpy",
      "name": "logical_xor",
      "notes": "Element-wise logical XOR.",
      "numpy_ref": "np.logical_xor",
      "slug": "logical_xor",
      "status": "supported",
      "summary": "Compute the truth value of x1 XOR x2, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/logspace",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/logspace/",
      "detail_json_href": "/api-data/ops/logspace.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.logspace",
      "free": false,
      "module": "numpy",
      "name": "logspace",
      "notes": "Log-spaced generation; cost = num.",
      "numpy_ref": "np.logspace",
      "slug": "logspace",
      "status": "supported",
      "summary": "Return numbers spaced evenly on a log scale.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/mask-indices",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/mask-indices/",
      "detail_json_href": "/api-data/ops/mask_indices.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.mask_indices",
      "free": false,
      "module": "numpy",
      "name": "mask_indices",
      "notes": "Return indices of mask for n x n array. Cost: numel(output).",
      "numpy_ref": "np.mask_indices",
      "slug": "mask_indices",
      "status": "supported",
      "summary": "Return the indices to access (n, n) arrays, given a masking function.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/matmul",
      "category": "counted_custom",
      "cost_formula": "m * k * n (FMA=1)",
      "cost_formula_latex": "$m \\cdot k \\cdot n$",
      "detail_href": "/docs/api/numpy/matmul/",
      "detail_json_href": "/api-data/ops/matmul.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.matmul",
      "free": false,
      "module": "numpy",
      "name": "matmul",
      "notes": "Matrix multiplication; cost = M*K*N (FMA=1).",
      "numpy_ref": "np.matmul",
      "slug": "matmul",
      "status": "supported",
      "summary": "Matrix product of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/matrix-transpose",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/matrix-transpose/",
      "detail_json_href": "/api-data/ops/matrix_transpose.json",
      "display_type": "free",
      "flopscope_ref": "fnp.matrix_transpose",
      "free": true,
      "module": "numpy",
      "name": "matrix_transpose",
      "notes": "Transpose last two dimensions (NumPy 2.x array API).",
      "numpy_ref": "np.matrix_transpose",
      "slug": "matrix_transpose",
      "status": "supported",
      "summary": "Transposes a matrix (or a stack of matrices) ``x``.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/matvec",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/matvec/",
      "detail_json_href": "/api-data/ops/matvec.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.matvec",
      "free": false,
      "module": "numpy",
      "name": "matvec",
      "notes": "Matrix-vector product. Cost = output_size * contracted_axis.",
      "numpy_ref": "np.matvec",
      "slug": "matvec",
      "status": "supported",
      "summary": "Matrix-vector dot product of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/max",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/max/",
      "detail_json_href": "/api-data/ops/max.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.max",
      "free": false,
      "module": "numpy",
      "name": "max",
      "notes": "Maximum value of array.",
      "numpy_ref": "np.max",
      "slug": "max",
      "status": "supported",
      "summary": "Return the maximum of an array or maximum along an axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/maximum",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/maximum/",
      "detail_json_href": "/api-data/ops/maximum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.maximum",
      "free": false,
      "module": "numpy",
      "name": "maximum",
      "notes": "Element-wise maximum (propagates NaN).",
      "numpy_ref": "np.maximum",
      "slug": "maximum",
      "status": "supported",
      "summary": "Element-wise maximum of array elements.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/may-share-memory",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/may-share-memory/",
      "detail_json_href": "/api-data/ops/may_share_memory.json",
      "display_type": "free",
      "flopscope_ref": "fnp.may_share_memory",
      "free": true,
      "module": "numpy",
      "name": "may_share_memory",
      "notes": "Determine if two arrays might share memory.",
      "numpy_ref": "np.may_share_memory",
      "slug": "may_share_memory",
      "status": "supported",
      "summary": "Determine if two arrays might share memory",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/mean",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/mean/",
      "detail_json_href": "/api-data/ops/mean.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.mean",
      "free": false,
      "module": "numpy",
      "name": "mean",
      "notes": "Arithmetic mean of array elements.",
      "numpy_ref": "np.mean",
      "slug": "mean",
      "status": "supported",
      "summary": "Compute the arithmetic mean along the specified axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/median",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/median/",
      "detail_json_href": "/api-data/ops/median.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.median",
      "free": false,
      "module": "numpy",
      "name": "median",
      "notes": "Median of array elements (sorts internally).",
      "numpy_ref": "np.median",
      "slug": "median",
      "status": "supported",
      "summary": "Compute the median along the specified axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/meshgrid",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/meshgrid/",
      "detail_json_href": "/api-data/ops/meshgrid.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.meshgrid",
      "free": false,
      "module": "numpy",
      "name": "meshgrid",
      "notes": "Coordinate matrices from coordinate vectors. Cost: numel(output).",
      "numpy_ref": "np.meshgrid",
      "slug": "meshgrid",
      "status": "supported",
      "summary": "Return a tuple of coordinate matrices from coordinate vectors.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/min",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/min/",
      "detail_json_href": "/api-data/ops/min.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.min",
      "free": false,
      "module": "numpy",
      "name": "min",
      "notes": "Minimum value of array.",
      "numpy_ref": "np.min",
      "slug": "min",
      "status": "supported",
      "summary": "Return the minimum of an array or minimum along an axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/min-scalar-type",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/min-scalar-type/",
      "detail_json_href": "/api-data/ops/min_scalar_type.json",
      "display_type": "free",
      "flopscope_ref": "fnp.min_scalar_type",
      "free": true,
      "module": "numpy",
      "name": "min_scalar_type",
      "notes": "Return the minimum scalar type for a value.",
      "numpy_ref": "np.min_scalar_type",
      "slug": "min_scalar_type",
      "status": "supported",
      "summary": "For scalar ``a``, returns the data type with the smallest size and smallest scalar kind which can hold its value.  For non-scalar array ``a``, returns the vector's dtype unmodified.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/minimum",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/minimum/",
      "detail_json_href": "/api-data/ops/minimum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.minimum",
      "free": false,
      "module": "numpy",
      "name": "minimum",
      "notes": "Element-wise minimum (propagates NaN).",
      "numpy_ref": "np.minimum",
      "slug": "minimum",
      "status": "supported",
      "summary": "Element-wise minimum of array elements.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/mintypecode",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/mintypecode/",
      "detail_json_href": "/api-data/ops/mintypecode.json",
      "display_type": "free",
      "flopscope_ref": "fnp.mintypecode",
      "free": true,
      "module": "numpy",
      "name": "mintypecode",
      "notes": "Return minimum data type character that can satisfy all given types.",
      "numpy_ref": "np.mintypecode",
      "slug": "mintypecode",
      "status": "supported",
      "summary": "Return the character for the minimum-size type to which given types can be safely cast.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/mod",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/mod/",
      "detail_json_href": "/api-data/ops/mod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.mod",
      "free": false,
      "module": "numpy",
      "name": "mod",
      "notes": "Element-wise modulo.",
      "numpy_ref": "np.mod",
      "slug": "mod",
      "status": "supported",
      "summary": "Returns the element-wise remainder of division.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/modf",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/modf/",
      "detail_json_href": "/api-data/ops/modf.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.modf",
      "free": false,
      "module": "numpy",
      "name": "modf",
      "notes": "Return fractional and integral parts element-wise.",
      "numpy_ref": "np.modf",
      "slug": "modf",
      "status": "supported",
      "summary": "Return the fractional and integral parts of an array, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/moveaxis",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/moveaxis/",
      "detail_json_href": "/api-data/ops/moveaxis.json",
      "display_type": "free",
      "flopscope_ref": "fnp.moveaxis",
      "free": true,
      "module": "numpy",
      "name": "moveaxis",
      "notes": "Move axes to new positions.",
      "numpy_ref": "np.moveaxis",
      "slug": "moveaxis",
      "status": "supported",
      "summary": "Move axes of an array to new positions.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/multiply",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/multiply/",
      "detail_json_href": "/api-data/ops/multiply.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.multiply",
      "free": false,
      "module": "numpy",
      "name": "multiply",
      "notes": "Element-wise multiplication.",
      "numpy_ref": "np.multiply",
      "slug": "multiply",
      "status": "supported",
      "summary": "Multiply arguments element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nan-to-num",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/nan-to-num/",
      "detail_json_href": "/api-data/ops/nan_to_num.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nan_to_num",
      "free": false,
      "module": "numpy",
      "name": "nan_to_num",
      "notes": "Replace NaN/inf with finite numbers element-wise.",
      "numpy_ref": "np.nan_to_num",
      "slug": "nan_to_num",
      "status": "supported",
      "summary": "Replace NaN with zero and infinity with large finite numbers (default behaviour) or with the numbers defined by the user using the `nan`, `posinf` and/or `neginf` keywords.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanargmax",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanargmax/",
      "detail_json_href": "/api-data/ops/nanargmax.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanargmax",
      "free": false,
      "module": "numpy",
      "name": "nanargmax",
      "notes": "Index of maximum ignoring NaNs.",
      "numpy_ref": "np.nanargmax",
      "slug": "nanargmax",
      "status": "supported",
      "summary": "Return the indices of the maximum values in the specified axis ignoring NaNs. For all-NaN slices ``ValueError`` is raised. Warning: the results cannot be trusted if a slice contains only NaNs and -Infs.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanargmin",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanargmin/",
      "detail_json_href": "/api-data/ops/nanargmin.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanargmin",
      "free": false,
      "module": "numpy",
      "name": "nanargmin",
      "notes": "Index of minimum ignoring NaNs.",
      "numpy_ref": "np.nanargmin",
      "slug": "nanargmin",
      "status": "supported",
      "summary": "Return the indices of the minimum values in the specified axis ignoring NaNs. For all-NaN slices ``ValueError`` is raised. Warning: the results cannot be trusted if a slice contains only NaNs and Infs.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nancumprod",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nancumprod/",
      "detail_json_href": "/api-data/ops/nancumprod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nancumprod",
      "free": false,
      "module": "numpy",
      "name": "nancumprod",
      "notes": "Cumulative product ignoring NaNs.",
      "numpy_ref": "np.nancumprod",
      "slug": "nancumprod",
      "status": "supported",
      "summary": "Return the cumulative product of array elements over a given axis treating Not a Numbers (NaNs) as one.  The cumulative product does not change when NaNs are encountered and leading NaNs are replaced by ones.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nancumsum",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nancumsum/",
      "detail_json_href": "/api-data/ops/nancumsum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nancumsum",
      "free": false,
      "module": "numpy",
      "name": "nancumsum",
      "notes": "Cumulative sum ignoring NaNs.",
      "numpy_ref": "np.nancumsum",
      "slug": "nancumsum",
      "status": "supported",
      "summary": "Return the cumulative sum of array elements over a given axis treating Not a Numbers (NaNs) as zero.  The cumulative sum does not change when NaNs are encountered and leading NaNs are replaced by zeros.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanmax",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanmax/",
      "detail_json_href": "/api-data/ops/nanmax.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanmax",
      "free": false,
      "module": "numpy",
      "name": "nanmax",
      "notes": "Maximum ignoring NaNs.",
      "numpy_ref": "np.nanmax",
      "slug": "nanmax",
      "status": "supported",
      "summary": "Return the maximum of an array or maximum along an axis, ignoring any NaNs.  When all-NaN slices are encountered a ``RuntimeWarning`` is raised and NaN is returned for that slice.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanmean",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanmean/",
      "detail_json_href": "/api-data/ops/nanmean.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanmean",
      "free": false,
      "module": "numpy",
      "name": "nanmean",
      "notes": "Mean ignoring NaNs.",
      "numpy_ref": "np.nanmean",
      "slug": "nanmean",
      "status": "supported",
      "summary": "Compute the arithmetic mean along the specified axis, ignoring NaNs.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanmedian",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanmedian/",
      "detail_json_href": "/api-data/ops/nanmedian.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanmedian",
      "free": false,
      "module": "numpy",
      "name": "nanmedian",
      "notes": "Median ignoring NaNs.",
      "numpy_ref": "np.nanmedian",
      "slug": "nanmedian",
      "status": "supported",
      "summary": "Compute the median along the specified axis, while ignoring NaNs.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanmin",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanmin/",
      "detail_json_href": "/api-data/ops/nanmin.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanmin",
      "free": false,
      "module": "numpy",
      "name": "nanmin",
      "notes": "Minimum ignoring NaNs.",
      "numpy_ref": "np.nanmin",
      "slug": "nanmin",
      "status": "supported",
      "summary": "Return minimum of an array or minimum along an axis, ignoring any NaNs. When all-NaN slices are encountered a ``RuntimeWarning`` is raised and Nan is returned for that slice.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanpercentile",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanpercentile/",
      "detail_json_href": "/api-data/ops/nanpercentile.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanpercentile",
      "free": false,
      "module": "numpy",
      "name": "nanpercentile",
      "notes": "q-th percentile ignoring NaNs.",
      "numpy_ref": "np.nanpercentile",
      "slug": "nanpercentile",
      "status": "supported",
      "summary": "Compute the qth percentile of the data along the specified axis, while ignoring nan values.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanprod",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanprod/",
      "detail_json_href": "/api-data/ops/nanprod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanprod",
      "free": false,
      "module": "numpy",
      "name": "nanprod",
      "notes": "Product ignoring NaNs.",
      "numpy_ref": "np.nanprod",
      "slug": "nanprod",
      "status": "supported",
      "summary": "Return the product of array elements over a given axis treating Not a Numbers (NaNs) as ones.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanquantile",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanquantile/",
      "detail_json_href": "/api-data/ops/nanquantile.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanquantile",
      "free": false,
      "module": "numpy",
      "name": "nanquantile",
      "notes": "q-th quantile ignoring NaNs.",
      "numpy_ref": "np.nanquantile",
      "slug": "nanquantile",
      "status": "supported",
      "summary": "Compute the qth quantile of the data along the specified axis, while ignoring nan values. Returns the qth quantile(s) of the array elements.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanstd",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanstd/",
      "detail_json_href": "/api-data/ops/nanstd.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanstd",
      "free": false,
      "module": "numpy",
      "name": "nanstd",
      "notes": "Standard deviation ignoring NaNs.",
      "numpy_ref": "np.nanstd",
      "slug": "nanstd",
      "status": "supported",
      "summary": "Compute the standard deviation along the specified axis, while ignoring NaNs.",
      "weight": 2.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nansum",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nansum/",
      "detail_json_href": "/api-data/ops/nansum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nansum",
      "free": false,
      "module": "numpy",
      "name": "nansum",
      "notes": "Sum ignoring NaNs.",
      "numpy_ref": "np.nansum",
      "slug": "nansum",
      "status": "supported",
      "summary": "Return the sum of array elements over a given axis treating Not a Numbers (NaNs) as zero.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nanvar",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/nanvar/",
      "detail_json_href": "/api-data/ops/nanvar.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nanvar",
      "free": false,
      "module": "numpy",
      "name": "nanvar",
      "notes": "Variance ignoring NaNs.",
      "numpy_ref": "np.nanvar",
      "slug": "nanvar",
      "status": "supported",
      "summary": "Compute the variance along the specified axis, while ignoring NaNs.",
      "weight": 2.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ndim",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/ndim/",
      "detail_json_href": "/api-data/ops/ndim.json",
      "display_type": "free",
      "flopscope_ref": "fnp.ndim",
      "free": true,
      "module": "numpy",
      "name": "ndim",
      "notes": "Return number of dimensions of array.",
      "numpy_ref": "np.ndim",
      "slug": "ndim",
      "status": "supported",
      "summary": "Return the number of dimensions of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/negative",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/negative/",
      "detail_json_href": "/api-data/ops/negative.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.negative",
      "free": false,
      "module": "numpy",
      "name": "negative",
      "notes": "Element-wise negation.",
      "numpy_ref": "np.negative",
      "slug": "negative",
      "status": "supported",
      "summary": "Numerical negative, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nextafter",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/nextafter/",
      "detail_json_href": "/api-data/ops/nextafter.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.nextafter",
      "free": false,
      "module": "numpy",
      "name": "nextafter",
      "notes": "Return next float after x1 toward x2 element-wise.",
      "numpy_ref": "np.nextafter",
      "slug": "nextafter",
      "status": "supported",
      "summary": "Return the next floating-point value after x1 towards x2, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/nonzero",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/nonzero/",
      "detail_json_href": "/api-data/ops/nonzero.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.nonzero",
      "free": false,
      "module": "numpy",
      "name": "nonzero",
      "notes": "Return indices of non-zero elements. Cost: numel(input).",
      "numpy_ref": "np.nonzero",
      "slug": "nonzero",
      "status": "supported",
      "summary": "Return the indices of the elements that are non-zero.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/not-equal",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/not-equal/",
      "detail_json_href": "/api-data/ops/not_equal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.not_equal",
      "free": false,
      "module": "numpy",
      "name": "not_equal",
      "notes": "Element-wise x1 != x2.",
      "numpy_ref": "np.not_equal",
      "slug": "not_equal",
      "status": "supported",
      "summary": "Return (x1 != x2) element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ones",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/ones/",
      "detail_json_href": "/api-data/ops/ones.json",
      "display_type": "free",
      "flopscope_ref": "fnp.ones",
      "free": true,
      "module": "numpy",
      "name": "ones",
      "notes": "Create one-filled array.",
      "numpy_ref": "np.ones",
      "slug": "ones",
      "status": "supported",
      "summary": "Return a new array of given shape and type, filled with ones.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ones-like",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/ones-like/",
      "detail_json_href": "/api-data/ops/ones_like.json",
      "display_type": "free",
      "flopscope_ref": "fnp.ones_like",
      "free": true,
      "module": "numpy",
      "name": "ones_like",
      "notes": "Array of ones with same shape/type as input.",
      "numpy_ref": "np.ones_like",
      "slug": "ones_like",
      "status": "supported",
      "summary": "Return an array of ones with the same shape and type as a given array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/outer",
      "category": "counted_custom",
      "cost_formula": "m * n",
      "cost_formula_latex": "$m \\cdot n$",
      "detail_href": "/docs/api/numpy/outer/",
      "detail_json_href": "/api-data/ops/outer.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.outer",
      "free": false,
      "module": "numpy",
      "name": "outer",
      "notes": "Outer product of two vectors; cost = M*N.",
      "numpy_ref": "np.outer",
      "slug": "outer",
      "status": "supported",
      "summary": "Compute the outer product of two vectors.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/packbits",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/packbits/",
      "detail_json_href": "/api-data/ops/packbits.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.packbits",
      "free": false,
      "module": "numpy",
      "name": "packbits",
      "notes": "Pack elements of array into bits. Cost: numel(input).",
      "numpy_ref": "np.packbits",
      "slug": "packbits",
      "status": "supported",
      "summary": "Packs the elements of a binary-valued array into bits in a uint8 array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/pad",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/pad/",
      "detail_json_href": "/api-data/ops/pad.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.pad",
      "free": false,
      "module": "numpy",
      "name": "pad",
      "notes": "Pad array. Cost: numel(output).",
      "numpy_ref": "np.pad",
      "slug": "pad",
      "status": "supported",
      "summary": "Pad an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/partition",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/partition/",
      "detail_json_href": "/api-data/ops/partition.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.partition",
      "free": false,
      "module": "numpy",
      "name": "partition",
      "notes": "Quickselect; cost = n per slice.",
      "numpy_ref": "np.partition",
      "slug": "partition",
      "status": "supported",
      "summary": "Return a partitioned copy of an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/percentile",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/percentile/",
      "detail_json_href": "/api-data/ops/percentile.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.percentile",
      "free": false,
      "module": "numpy",
      "name": "percentile",
      "notes": "q-th percentile of array elements.",
      "numpy_ref": "np.percentile",
      "slug": "percentile",
      "status": "supported",
      "summary": "Compute the q-th percentile of the data along the specified axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/permute-dims",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/permute-dims/",
      "detail_json_href": "/api-data/ops/permute_dims.json",
      "display_type": "free",
      "flopscope_ref": "fnp.permute_dims",
      "free": true,
      "module": "numpy",
      "name": "permute_dims",
      "notes": "Permute dimensions (NumPy 2.x array API).",
      "numpy_ref": "np.permute_dims",
      "slug": "permute_dims",
      "status": "supported",
      "summary": "Returns an array with axes transposed.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/piecewise",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/piecewise/",
      "detail_json_href": "/api-data/ops/piecewise.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.piecewise",
      "free": false,
      "module": "numpy",
      "name": "piecewise",
      "notes": "Piecewise function. Cost: numel(input).",
      "numpy_ref": "np.piecewise",
      "slug": "piecewise",
      "status": "supported",
      "summary": "Evaluate a piecewise-defined function.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/place",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/place/",
      "detail_json_href": "/api-data/ops/place.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.place",
      "free": false,
      "module": "numpy",
      "name": "place",
      "notes": "Change elements satisfying condition. Cost: numel(input).",
      "numpy_ref": "np.place",
      "slug": "place",
      "status": "supported",
      "summary": "Change elements of an array based on conditional and input values.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/poly",
      "category": "counted_custom",
      "cost_formula": "n^2",
      "cost_formula_latex": "$n^2$",
      "detail_href": "/docs/api/numpy/poly/",
      "detail_json_href": "/api-data/ops/poly.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.poly",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "poly",
      "notes": "Polynomial from roots. Cost: $n^2$ FLOPs.",
      "numpy_ref": "np.poly",
      "slug": "poly",
      "status": "supported",
      "summary": "Find the coefficients of a polynomial with the given sequence of roots.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polyadd",
      "category": "counted_custom",
      "cost_formula": "max(n1, n2)",
      "cost_formula_latex": "$\\max(n_1, n_2)$",
      "detail_href": "/docs/api/numpy/polyadd/",
      "detail_json_href": "/api-data/ops/polyadd.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polyadd",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polyadd",
      "notes": "Add two polynomials. Cost: max(n1, n2) FLOPs.",
      "numpy_ref": "np.polyadd",
      "slug": "polyadd",
      "status": "supported",
      "summary": "Find the sum of two polynomials.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polyder",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/polyder/",
      "detail_json_href": "/api-data/ops/polyder.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polyder",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polyder",
      "notes": "Differentiate polynomial. Cost: n FLOPs.",
      "numpy_ref": "np.polyder",
      "slug": "polyder",
      "status": "supported",
      "summary": "Return the derivative of the specified order of a polynomial.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polydiv",
      "category": "counted_custom",
      "cost_formula": "n1 * n2",
      "cost_formula_latex": "$n_1 \\cdot n_2$",
      "detail_href": "/docs/api/numpy/polydiv/",
      "detail_json_href": "/api-data/ops/polydiv.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polydiv",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polydiv",
      "notes": "Divide one polynomial by another. Cost: n1 * n2 FLOPs.",
      "numpy_ref": "np.polydiv",
      "slug": "polydiv",
      "status": "supported",
      "summary": "Returns the quotient and remainder of polynomial division.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polyfit",
      "category": "counted_custom",
      "cost_formula": "2m * (deg+1)^2",
      "cost_formula_latex": "$2m \\cdot (\\text{deg}+1)^2$",
      "detail_href": "/docs/api/numpy/polyfit/",
      "detail_json_href": "/api-data/ops/polyfit.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polyfit",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polyfit",
      "notes": "Least squares polynomial fit. Cost: 2 * m * (deg+1)^2 FLOPs.",
      "numpy_ref": "np.polyfit",
      "slug": "polyfit",
      "status": "supported",
      "summary": "Least squares polynomial fit.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polyint",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/polyint/",
      "detail_json_href": "/api-data/ops/polyint.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polyint",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polyint",
      "notes": "Integrate polynomial. Cost: n FLOPs.",
      "numpy_ref": "np.polyint",
      "slug": "polyint",
      "status": "supported",
      "summary": "Return an antiderivative (indefinite integral) of a polynomial.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polymul",
      "category": "counted_custom",
      "cost_formula": "n1 * n2",
      "cost_formula_latex": "$n_1 \\cdot n_2$",
      "detail_href": "/docs/api/numpy/polymul/",
      "detail_json_href": "/api-data/ops/polymul.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polymul",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polymul",
      "notes": "Multiply polynomials. Cost: n1 * n2 FLOPs.",
      "numpy_ref": "np.polymul",
      "slug": "polymul",
      "status": "supported",
      "summary": "Find the product of two polynomials.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polysub",
      "category": "counted_custom",
      "cost_formula": "max(n1, n2)",
      "cost_formula_latex": "$\\max(n_1, n_2)$",
      "detail_href": "/docs/api/numpy/polysub/",
      "detail_json_href": "/api-data/ops/polysub.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polysub",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polysub",
      "notes": "Difference (subtraction) of two polynomials. Cost: max(n1, n2) FLOPs.",
      "numpy_ref": "np.polysub",
      "slug": "polysub",
      "status": "supported",
      "summary": "Difference (subtraction) of two polynomials.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/polyval",
      "category": "counted_custom",
      "cost_formula": "m * deg (FMA=1)",
      "cost_formula_latex": "$m \\cdot \\text{deg}$",
      "detail_href": "/docs/api/numpy/polyval/",
      "detail_json_href": "/api-data/ops/polyval.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.polyval",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "polyval",
      "notes": "Evaluate polynomial at given points. Cost: $m \\cdot \\text{deg}$ (Horner's method, FMA=1).",
      "numpy_ref": "np.polyval",
      "slug": "polyval",
      "status": "supported",
      "summary": "Evaluate a polynomial at specific values.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/positive",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/positive/",
      "detail_json_href": "/api-data/ops/positive.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.positive",
      "free": false,
      "module": "numpy",
      "name": "positive",
      "notes": "Element-wise unary plus (copy with sign preserved).",
      "numpy_ref": "np.positive",
      "slug": "positive",
      "status": "supported",
      "summary": "Numerical positive, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/power",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/power/",
      "detail_json_href": "/api-data/ops/power.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.power",
      "free": false,
      "module": "numpy",
      "name": "power",
      "notes": "Element-wise exponentiation x**y.",
      "numpy_ref": "np.power",
      "slug": "power",
      "status": "supported",
      "summary": "First array elements raised to powers from second array, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/prod",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/prod/",
      "detail_json_href": "/api-data/ops/prod.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.prod",
      "free": false,
      "module": "numpy",
      "name": "prod",
      "notes": "Product of array elements.",
      "numpy_ref": "np.prod",
      "slug": "prod",
      "status": "supported",
      "summary": "Return the product of array elements over a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/promote-types",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/promote-types/",
      "detail_json_href": "/api-data/ops/promote_types.json",
      "display_type": "free",
      "flopscope_ref": "fnp.promote_types",
      "free": true,
      "module": "numpy",
      "name": "promote_types",
      "notes": "Return smallest type to which both types may be safely cast.",
      "numpy_ref": "np.promote_types",
      "slug": "promote_types",
      "status": "supported",
      "summary": "Returns the data type with the smallest size and smallest scalar kind to which both ``type1`` and ``type2`` may be safely cast. The returned data type is always considered \"canonical\", this mainly means that the promoted dtype will always be in native byte order.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ptp",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/ptp/",
      "detail_json_href": "/api-data/ops/ptp.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.ptp",
      "free": false,
      "module": "numpy",
      "name": "ptp",
      "notes": "Peak-to-peak (max - min) range of array.",
      "numpy_ref": "np.ptp",
      "slug": "ptp",
      "status": "supported",
      "summary": "Range of values (maximum - minimum) along an axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/put",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/put/",
      "detail_json_href": "/api-data/ops/put.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.put",
      "free": false,
      "module": "numpy",
      "name": "put",
      "notes": "Replace elements at given flat indices. Cost: numel(input).",
      "numpy_ref": "np.put",
      "slug": "put",
      "status": "supported",
      "summary": "Replaces specified elements of an array with given values.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/put-along-axis",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/put-along-axis/",
      "detail_json_href": "/api-data/ops/put_along_axis.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.put_along_axis",
      "free": false,
      "module": "numpy",
      "name": "put_along_axis",
      "notes": "Put values into destination array using indices. Cost: numel(input).",
      "numpy_ref": "np.put_along_axis",
      "slug": "put_along_axis",
      "status": "supported",
      "summary": "Put values into the destination array by matching 1d index and data slices.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/putmask",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/putmask/",
      "detail_json_href": "/api-data/ops/putmask.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.putmask",
      "free": false,
      "module": "numpy",
      "name": "putmask",
      "notes": "Change elements of array based on condition and input values. Cost: numel(input).",
      "numpy_ref": "np.putmask",
      "slug": "putmask",
      "status": "supported",
      "summary": "Changes elements of an array based on conditional and input values.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/quantile",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/quantile/",
      "detail_json_href": "/api-data/ops/quantile.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.quantile",
      "free": false,
      "module": "numpy",
      "name": "quantile",
      "notes": "q-th quantile of array elements.",
      "numpy_ref": "np.quantile",
      "slug": "quantile",
      "status": "supported",
      "summary": "Compute the q-th quantile of the data along the specified axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/radians",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/radians/",
      "detail_json_href": "/api-data/ops/radians.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.radians",
      "free": false,
      "module": "numpy",
      "name": "radians",
      "notes": "Convert degrees to radians element-wise.",
      "numpy_ref": "np.radians",
      "slug": "radians",
      "status": "supported",
      "summary": "Convert angles from degrees to radians.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/beta",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/beta/",
      "detail_json_href": "/api-data/ops/random-Generator-beta.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.beta",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.beta",
      "notes": "Beta distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.beta",
      "slug": "random-Generator-beta",
      "status": "supported",
      "summary": "Draw samples from a Beta distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/binomial",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/binomial/",
      "detail_json_href": "/api-data/ops/random-Generator-binomial.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.binomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.binomial",
      "notes": "Binomial distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.binomial",
      "slug": "random-Generator-binomial",
      "status": "supported",
      "summary": "Draw samples from a binomial distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/bit-generator",
      "category": "free_random_method",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/generator/bit-generator/",
      "detail_json_href": "/api-data/ops/random-Generator-bit_generator.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.Generator.bit_generator",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.bit_generator",
      "notes": "Underlying BitGenerator; attribute access, no math.",
      "numpy_ref": "np.random.Generator.bit_generator",
      "slug": "random-Generator-bit_generator",
      "status": "supported",
      "summary": "Gets the bit generator instance used by the generator",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/bytes",
      "category": "counted_random_method",
      "cost_formula": "length",
      "cost_formula_latex": "$\\text{length}$",
      "detail_href": "/docs/api/numpy/random/generator/bytes/",
      "detail_json_href": "/api-data/ops/random-Generator-bytes.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.bytes",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.bytes",
      "notes": "Raw bytes; cost = length argument.",
      "numpy_ref": "np.random.Generator.bytes",
      "slug": "random-Generator-bytes",
      "status": "supported",
      "summary": "Return random bytes.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/chisquare",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/chisquare/",
      "detail_json_href": "/api-data/ops/random-Generator-chisquare.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.chisquare",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.chisquare",
      "notes": "Chi-square distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.chisquare",
      "slug": "random-Generator-chisquare",
      "status": "supported",
      "summary": "Draw samples from a chi-square distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/choice",
      "category": "counted_random_method",
      "cost_formula": "numel(output) if replace, else sort_cost(n)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$ if replace, else $n \\cdot \\lceil \\log_2 n \\rceil$",
      "detail_href": "/docs/api/numpy/random/generator/choice/",
      "detail_json_href": "/api-data/ops/random-Generator-choice.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.choice",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.choice",
      "notes": "numel(output) if replace else sort_cost(n).",
      "numpy_ref": "np.random.Generator.choice",
      "slug": "random-Generator-choice",
      "status": "supported",
      "summary": "Generates a random sample from a given array",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/dirichlet",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/dirichlet/",
      "detail_json_href": "/api-data/ops/random-Generator-dirichlet.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.dirichlet",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.dirichlet",
      "notes": "Dirichlet distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.dirichlet",
      "slug": "random-Generator-dirichlet",
      "status": "supported",
      "summary": "Draw samples from the Dirichlet distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/exponential",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/exponential/",
      "detail_json_href": "/api-data/ops/random-Generator-exponential.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.exponential",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.exponential",
      "notes": "Exponential distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.exponential",
      "slug": "random-Generator-exponential",
      "status": "supported",
      "summary": "Draw samples from an exponential distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/f",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/f/",
      "detail_json_href": "/api-data/ops/random-Generator-f.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.f",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.f",
      "notes": "F distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.f",
      "slug": "random-Generator-f",
      "status": "supported",
      "summary": "Draw samples from an F distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/gamma",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/gamma/",
      "detail_json_href": "/api-data/ops/random-Generator-gamma.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.gamma",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.gamma",
      "notes": "Gamma distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.gamma",
      "slug": "random-Generator-gamma",
      "status": "supported",
      "summary": "Draw samples from a Gamma distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/geometric",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/geometric/",
      "detail_json_href": "/api-data/ops/random-Generator-geometric.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.geometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.geometric",
      "notes": "Geometric distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.geometric",
      "slug": "random-Generator-geometric",
      "status": "supported",
      "summary": "Draw samples from the geometric distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/gumbel",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/gumbel/",
      "detail_json_href": "/api-data/ops/random-Generator-gumbel.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.gumbel",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.gumbel",
      "notes": "Gumbel distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.gumbel",
      "slug": "random-Generator-gumbel",
      "status": "supported",
      "summary": "Draw samples from a Gumbel distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/hypergeometric",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/hypergeometric/",
      "detail_json_href": "/api-data/ops/random-Generator-hypergeometric.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.hypergeometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.hypergeometric",
      "notes": "Hypergeometric distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.hypergeometric",
      "slug": "random-Generator-hypergeometric",
      "status": "supported",
      "summary": "Draw samples from a Hypergeometric distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/integers",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/integers/",
      "detail_json_href": "/api-data/ops/random-Generator-integers.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.integers",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.integers",
      "notes": "Modern Generator integers (replaces legacy randint).",
      "numpy_ref": "np.random.Generator.integers",
      "slug": "random-Generator-integers",
      "status": "supported",
      "summary": "Return random integers from `low` (inclusive) to `high` (exclusive), or if endpoint=True, `low` (inclusive) to `high` (inclusive). Replaces `RandomState.randint` (with endpoint=False) and `RandomState.random_integers` (with endpoint=True)",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/laplace",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/laplace/",
      "detail_json_href": "/api-data/ops/random-Generator-laplace.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.laplace",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.laplace",
      "notes": "Laplace distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.laplace",
      "slug": "random-Generator-laplace",
      "status": "supported",
      "summary": "Draw samples from the Laplace or double exponential distribution with specified location (or mean) and scale (decay).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/logistic",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/logistic/",
      "detail_json_href": "/api-data/ops/random-Generator-logistic.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.logistic",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.logistic",
      "notes": "Logistic distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.logistic",
      "slug": "random-Generator-logistic",
      "status": "supported",
      "summary": "Draw samples from a logistic distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/lognormal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/lognormal/",
      "detail_json_href": "/api-data/ops/random-Generator-lognormal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.lognormal",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.lognormal",
      "notes": "Log-normal distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.lognormal",
      "slug": "random-Generator-lognormal",
      "status": "supported",
      "summary": "Draw samples from a log-normal distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/logseries",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/logseries/",
      "detail_json_href": "/api-data/ops/random-Generator-logseries.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.logseries",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.logseries",
      "notes": "Log-series distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.logseries",
      "slug": "random-Generator-logseries",
      "status": "supported",
      "summary": "Draw samples from a logarithmic series distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/multinomial",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/multinomial/",
      "detail_json_href": "/api-data/ops/random-Generator-multinomial.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.multinomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.multinomial",
      "notes": "Multinomial distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.multinomial",
      "slug": "random-Generator-multinomial",
      "status": "supported",
      "summary": "Draw samples from a multinomial distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/multivariate-hypergeometric",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/multivariate-hypergeometric/",
      "detail_json_href": "/api-data/ops/random-Generator-multivariate_hypergeometric.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.multivariate_hypergeometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.multivariate_hypergeometric",
      "notes": "Multivariate hypergeometric; cost = numel(output).",
      "numpy_ref": "np.random.Generator.multivariate_hypergeometric",
      "slug": "random-Generator-multivariate_hypergeometric",
      "status": "supported",
      "summary": "Generate variates from a multivariate hypergeometric distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/multivariate-normal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/multivariate-normal/",
      "detail_json_href": "/api-data/ops/random-Generator-multivariate_normal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.multivariate_normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.multivariate_normal",
      "notes": "Multivariate normal; cost = numel(output).",
      "numpy_ref": "np.random.Generator.multivariate_normal",
      "slug": "random-Generator-multivariate_normal",
      "status": "supported",
      "summary": "Draw random samples from a multivariate normal distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/negative-binomial",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/negative-binomial/",
      "detail_json_href": "/api-data/ops/random-Generator-negative_binomial.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.negative_binomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.negative_binomial",
      "notes": "Negative binomial distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.negative_binomial",
      "slug": "random-Generator-negative_binomial",
      "status": "supported",
      "summary": "Draw samples from a negative binomial distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/noncentral-chisquare",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/noncentral-chisquare/",
      "detail_json_href": "/api-data/ops/random-Generator-noncentral_chisquare.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.noncentral_chisquare",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.noncentral_chisquare",
      "notes": "Noncentral chi-square; cost = numel(output).",
      "numpy_ref": "np.random.Generator.noncentral_chisquare",
      "slug": "random-Generator-noncentral_chisquare",
      "status": "supported",
      "summary": "Draw samples from a noncentral chi-square distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/noncentral-f",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/noncentral-f/",
      "detail_json_href": "/api-data/ops/random-Generator-noncentral_f.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.noncentral_f",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.noncentral_f",
      "notes": "Noncentral F; cost = numel(output).",
      "numpy_ref": "np.random.Generator.noncentral_f",
      "slug": "random-Generator-noncentral_f",
      "status": "supported",
      "summary": "Draw samples from the noncentral F distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/normal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/normal/",
      "detail_json_href": "/api-data/ops/random-Generator-normal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.normal",
      "notes": "Normal distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.normal",
      "slug": "random-Generator-normal",
      "status": "supported",
      "summary": "Draw random samples from a normal (Gaussian) distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/pareto",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/pareto/",
      "detail_json_href": "/api-data/ops/random-Generator-pareto.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.pareto",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.pareto",
      "notes": "Pareto distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.pareto",
      "slug": "random-Generator-pareto",
      "status": "supported",
      "summary": "Draw samples from a Pareto II (AKA Lomax) distribution with specified shape.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/permutation",
      "category": "counted_random_method",
      "cost_formula": "shape[axis]",
      "cost_formula_latex": "$\\text{shape}[\\text{axis}]$",
      "detail_href": "/docs/api/numpy/random/generator/permutation/",
      "detail_json_href": "/api-data/ops/random-Generator-permutation.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.permutation",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.permutation",
      "notes": "Random permutation; cost = shape[axis] (Fisher-Yates draws).",
      "numpy_ref": "np.random.Generator.permutation",
      "slug": "random-Generator-permutation",
      "status": "supported",
      "summary": "Randomly permute a sequence, or return a permuted range.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/permuted",
      "category": "counted_random_method",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/random/generator/permuted/",
      "detail_json_href": "/api-data/ops/random-Generator-permuted.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.permuted",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.permuted",
      "notes": "Permute along axis; cost from input array size.",
      "numpy_ref": "np.random.Generator.permuted",
      "slug": "random-Generator-permuted",
      "status": "supported",
      "summary": "Randomly permute `x` along axis `axis`.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/poisson",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/poisson/",
      "detail_json_href": "/api-data/ops/random-Generator-poisson.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.poisson",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.poisson",
      "notes": "Poisson distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.poisson",
      "slug": "random-Generator-poisson",
      "status": "supported",
      "summary": "Draw samples from a Poisson distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/power",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/power/",
      "detail_json_href": "/api-data/ops/random-Generator-power.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.power",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.power",
      "notes": "Power distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.power",
      "slug": "random-Generator-power",
      "status": "supported",
      "summary": "Draws samples in [0, 1] from a power distribution with positive exponent a - 1.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/random",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/random/",
      "detail_json_href": "/api-data/ops/random-Generator-random.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.random",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.random",
      "notes": "Uniform [0, 1) \u2014 modern Generator equivalent of rand/random_sample.",
      "numpy_ref": "np.random.Generator.random",
      "slug": "random-Generator-random",
      "status": "supported",
      "summary": "Return random floats in the half-open interval [0.0, 1.0).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/rayleigh",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/rayleigh/",
      "detail_json_href": "/api-data/ops/random-Generator-rayleigh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.rayleigh",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.rayleigh",
      "notes": "Rayleigh distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.rayleigh",
      "slug": "random-Generator-rayleigh",
      "status": "supported",
      "summary": "Draw samples from a Rayleigh distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/shuffle",
      "category": "counted_random_method",
      "cost_formula": "shape[axis]",
      "cost_formula_latex": "$\\text{shape}[\\text{axis}]$",
      "detail_href": "/docs/api/numpy/random/generator/shuffle/",
      "detail_json_href": "/api-data/ops/random-Generator-shuffle.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.shuffle",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.shuffle",
      "notes": "In-place shuffle; cost = shape[axis] (Fisher-Yates draws).",
      "numpy_ref": "np.random.Generator.shuffle",
      "slug": "random-Generator-shuffle",
      "status": "supported",
      "summary": "Modify an array or sequence in-place by shuffling its contents.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/spawn",
      "category": "free_random_method",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/generator/spawn/",
      "detail_json_href": "/api-data/ops/random-Generator-spawn.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.Generator.spawn",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.spawn",
      "notes": "Returns child Generators; subclass override wraps them as _CountedGenerator.",
      "numpy_ref": "np.random.Generator.spawn",
      "slug": "random-Generator-spawn",
      "status": "supported",
      "summary": "Create new independent child generators.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/standard-cauchy",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/standard-cauchy/",
      "detail_json_href": "/api-data/ops/random-Generator-standard_cauchy.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.standard_cauchy",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.standard_cauchy",
      "notes": "Standard Cauchy distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.standard_cauchy",
      "slug": "random-Generator-standard_cauchy",
      "status": "supported",
      "summary": "Draw samples from a standard Cauchy distribution with mode = 0.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/standard-exponential",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/standard-exponential/",
      "detail_json_href": "/api-data/ops/random-Generator-standard_exponential.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.standard_exponential",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.standard_exponential",
      "notes": "Standard exponential; cost = numel(output).",
      "numpy_ref": "np.random.Generator.standard_exponential",
      "slug": "random-Generator-standard_exponential",
      "status": "supported",
      "summary": "Draw samples from the standard exponential distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/standard-gamma",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/standard-gamma/",
      "detail_json_href": "/api-data/ops/random-Generator-standard_gamma.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.standard_gamma",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.standard_gamma",
      "notes": "Standard gamma; cost = numel(output).",
      "numpy_ref": "np.random.Generator.standard_gamma",
      "slug": "random-Generator-standard_gamma",
      "status": "supported",
      "summary": "Draw samples from a standard Gamma distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/standard-normal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/standard-normal/",
      "detail_json_href": "/api-data/ops/random-Generator-standard_normal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.standard_normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.standard_normal",
      "notes": "Standard normal; cost = numel(output).",
      "numpy_ref": "np.random.Generator.standard_normal",
      "slug": "random-Generator-standard_normal",
      "status": "supported",
      "summary": "Draw samples from a standard Normal distribution (mean=0, stdev=1).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/standard-t",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/standard-t/",
      "detail_json_href": "/api-data/ops/random-Generator-standard_t.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.standard_t",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.standard_t",
      "notes": "Standard Student-t; cost = numel(output).",
      "numpy_ref": "np.random.Generator.standard_t",
      "slug": "random-Generator-standard_t",
      "status": "supported",
      "summary": "Draw samples from a standard Student's t distribution with `df` degrees of freedom.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/triangular",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/triangular/",
      "detail_json_href": "/api-data/ops/random-Generator-triangular.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.triangular",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.triangular",
      "notes": "Triangular distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.triangular",
      "slug": "random-Generator-triangular",
      "status": "supported",
      "summary": "Draw samples from the triangular distribution over the interval ``[left, right]``.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/uniform",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/uniform/",
      "detail_json_href": "/api-data/ops/random-Generator-uniform.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.uniform",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.uniform",
      "notes": "Uniform distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.uniform",
      "slug": "random-Generator-uniform",
      "status": "supported",
      "summary": "Draw samples from a uniform distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/vonmises",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/vonmises/",
      "detail_json_href": "/api-data/ops/random-Generator-vonmises.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.vonmises",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.vonmises",
      "notes": "Von Mises distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.vonmises",
      "slug": "random-Generator-vonmises",
      "status": "supported",
      "summary": "Draw samples from a von Mises distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/wald",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/wald/",
      "detail_json_href": "/api-data/ops/random-Generator-wald.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.wald",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.wald",
      "notes": "Wald (inverse Gaussian) distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.wald",
      "slug": "random-Generator-wald",
      "status": "supported",
      "summary": "Draw samples from a Wald, or inverse Gaussian, distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/weibull",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/weibull/",
      "detail_json_href": "/api-data/ops/random-Generator-weibull.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.weibull",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.weibull",
      "notes": "Weibull distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.weibull",
      "slug": "random-Generator-weibull",
      "status": "supported",
      "summary": "Draw samples from a Weibull distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/generator/zipf",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/generator/zipf/",
      "detail_json_href": "/api-data/ops/random-Generator-zipf.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.Generator.zipf",
      "free": false,
      "module": "numpy.random",
      "name": "random.Generator.zipf",
      "notes": "Zipf distribution; cost = numel(output).",
      "numpy_ref": "np.random.Generator.zipf",
      "slug": "random-Generator-zipf",
      "status": "supported",
      "summary": "Draw samples from a Zipf distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/beta",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/beta/",
      "detail_json_href": "/api-data/ops/random-RandomState-beta.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.beta",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.beta",
      "notes": "Legacy beta sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.beta",
      "slug": "random-RandomState-beta",
      "status": "supported",
      "summary": "Draw samples from a Beta distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/binomial",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/binomial/",
      "detail_json_href": "/api-data/ops/random-RandomState-binomial.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.binomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.binomial",
      "notes": "Legacy binomial sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.binomial",
      "slug": "random-RandomState-binomial",
      "status": "supported",
      "summary": "Draw samples from a binomial distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/bytes",
      "category": "counted_random_method",
      "cost_formula": "length",
      "cost_formula_latex": "$\\text{length}$",
      "detail_href": "/docs/api/numpy/random/random-state/bytes/",
      "detail_json_href": "/api-data/ops/random-RandomState-bytes.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.bytes",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.bytes",
      "notes": "Legacy bytes sampler; cost = length argument.",
      "numpy_ref": "np.random.RandomState.bytes",
      "slug": "random-RandomState-bytes",
      "status": "supported",
      "summary": "Return random bytes.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/chisquare",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/chisquare/",
      "detail_json_href": "/api-data/ops/random-RandomState-chisquare.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.chisquare",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.chisquare",
      "notes": "Legacy chi-square sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.chisquare",
      "slug": "random-RandomState-chisquare",
      "status": "supported",
      "summary": "Draw samples from a chi-square distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/choice",
      "category": "counted_random_method",
      "cost_formula": "numel(output) if replace, else sort_cost(n)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$ if replace, else $n \\cdot \\lceil \\log_2 n \\rceil$",
      "detail_href": "/docs/api/numpy/random/random-state/choice/",
      "detail_json_href": "/api-data/ops/random-RandomState-choice.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.choice",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.choice",
      "notes": "Legacy choice sampler; numel(output) if replace else sort_cost(n).",
      "numpy_ref": "np.random.RandomState.choice",
      "slug": "random-RandomState-choice",
      "status": "supported",
      "summary": "Generates a random sample from a given 1-D array",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/dirichlet",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/dirichlet/",
      "detail_json_href": "/api-data/ops/random-RandomState-dirichlet.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.dirichlet",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.dirichlet",
      "notes": "Legacy Dirichlet sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.dirichlet",
      "slug": "random-RandomState-dirichlet",
      "status": "supported",
      "summary": "Draw samples from the Dirichlet distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/exponential",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/exponential/",
      "detail_json_href": "/api-data/ops/random-RandomState-exponential.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.exponential",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.exponential",
      "notes": "Legacy exponential sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.exponential",
      "slug": "random-RandomState-exponential",
      "status": "supported",
      "summary": "Draw samples from an exponential distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/f",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/f/",
      "detail_json_href": "/api-data/ops/random-RandomState-f.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.f",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.f",
      "notes": "Legacy F sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.f",
      "slug": "random-RandomState-f",
      "status": "supported",
      "summary": "Draw samples from an F distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/gamma",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/gamma/",
      "detail_json_href": "/api-data/ops/random-RandomState-gamma.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.gamma",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.gamma",
      "notes": "Legacy gamma sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.gamma",
      "slug": "random-RandomState-gamma",
      "status": "supported",
      "summary": "Draw samples from a Gamma distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/geometric",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/geometric/",
      "detail_json_href": "/api-data/ops/random-RandomState-geometric.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.geometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.geometric",
      "notes": "Legacy geometric sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.geometric",
      "slug": "random-RandomState-geometric",
      "status": "supported",
      "summary": "Draw samples from the geometric distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/get-state",
      "category": "free_random_method",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/random-state/get-state/",
      "detail_json_href": "/api-data/ops/random-RandomState-get_state.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.RandomState.get_state",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.get_state",
      "notes": "State accessor; no math.",
      "numpy_ref": "np.random.RandomState.get_state",
      "slug": "random-RandomState-get_state",
      "status": "supported",
      "summary": "Return a tuple representing the internal state of the generator.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/gumbel",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/gumbel/",
      "detail_json_href": "/api-data/ops/random-RandomState-gumbel.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.gumbel",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.gumbel",
      "notes": "Legacy Gumbel sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.gumbel",
      "slug": "random-RandomState-gumbel",
      "status": "supported",
      "summary": "Draw samples from a Gumbel distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/hypergeometric",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/hypergeometric/",
      "detail_json_href": "/api-data/ops/random-RandomState-hypergeometric.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.hypergeometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.hypergeometric",
      "notes": "Legacy hypergeometric sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.hypergeometric",
      "slug": "random-RandomState-hypergeometric",
      "status": "supported",
      "summary": "Draw samples from a Hypergeometric distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/laplace",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/laplace/",
      "detail_json_href": "/api-data/ops/random-RandomState-laplace.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.laplace",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.laplace",
      "notes": "Legacy Laplace sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.laplace",
      "slug": "random-RandomState-laplace",
      "status": "supported",
      "summary": "Draw samples from the Laplace or double exponential distribution with specified location (or mean) and scale (decay).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/logistic",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/logistic/",
      "detail_json_href": "/api-data/ops/random-RandomState-logistic.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.logistic",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.logistic",
      "notes": "Legacy logistic sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.logistic",
      "slug": "random-RandomState-logistic",
      "status": "supported",
      "summary": "Draw samples from a logistic distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/lognormal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/lognormal/",
      "detail_json_href": "/api-data/ops/random-RandomState-lognormal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.lognormal",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.lognormal",
      "notes": "Legacy log-normal sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.lognormal",
      "slug": "random-RandomState-lognormal",
      "status": "supported",
      "summary": "Draw samples from a log-normal distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/logseries",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/logseries/",
      "detail_json_href": "/api-data/ops/random-RandomState-logseries.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.logseries",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.logseries",
      "notes": "Legacy log-series sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.logseries",
      "slug": "random-RandomState-logseries",
      "status": "supported",
      "summary": "Draw samples from a logarithmic series distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/multinomial",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/multinomial/",
      "detail_json_href": "/api-data/ops/random-RandomState-multinomial.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.multinomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.multinomial",
      "notes": "Legacy multinomial sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.multinomial",
      "slug": "random-RandomState-multinomial",
      "status": "supported",
      "summary": "Draw samples from a multinomial distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/multivariate-normal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/multivariate-normal/",
      "detail_json_href": "/api-data/ops/random-RandomState-multivariate_normal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.multivariate_normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.multivariate_normal",
      "notes": "Legacy multivariate normal; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.multivariate_normal",
      "slug": "random-RandomState-multivariate_normal",
      "status": "supported",
      "summary": "Draw random samples from a multivariate normal distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/negative-binomial",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/negative-binomial/",
      "detail_json_href": "/api-data/ops/random-RandomState-negative_binomial.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.negative_binomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.negative_binomial",
      "notes": "Legacy negative binomial sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.negative_binomial",
      "slug": "random-RandomState-negative_binomial",
      "status": "supported",
      "summary": "Draw samples from a negative binomial distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/noncentral-chisquare",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/noncentral-chisquare/",
      "detail_json_href": "/api-data/ops/random-RandomState-noncentral_chisquare.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.noncentral_chisquare",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.noncentral_chisquare",
      "notes": "Legacy noncentral chi-square; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.noncentral_chisquare",
      "slug": "random-RandomState-noncentral_chisquare",
      "status": "supported",
      "summary": "Draw samples from a noncentral chi-square distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/noncentral-f",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/noncentral-f/",
      "detail_json_href": "/api-data/ops/random-RandomState-noncentral_f.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.noncentral_f",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.noncentral_f",
      "notes": "Legacy noncentral F; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.noncentral_f",
      "slug": "random-RandomState-noncentral_f",
      "status": "supported",
      "summary": "Draw samples from the noncentral F distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/normal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/normal/",
      "detail_json_href": "/api-data/ops/random-RandomState-normal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.normal",
      "notes": "Legacy normal sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.normal",
      "slug": "random-RandomState-normal",
      "status": "supported",
      "summary": "Draw random samples from a normal (Gaussian) distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/pareto",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/pareto/",
      "detail_json_href": "/api-data/ops/random-RandomState-pareto.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.pareto",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.pareto",
      "notes": "Legacy Pareto sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.pareto",
      "slug": "random-RandomState-pareto",
      "status": "supported",
      "summary": "Draw samples from a Pareto II or Lomax distribution with specified shape.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/permutation",
      "category": "counted_random_method",
      "cost_formula": "shape[axis]",
      "cost_formula_latex": "$\\text{shape}[\\text{axis}]$",
      "detail_href": "/docs/api/numpy/random/random-state/permutation/",
      "detail_json_href": "/api-data/ops/random-RandomState-permutation.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.permutation",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.permutation",
      "notes": "Legacy permutation; cost = shape[axis] (Fisher-Yates draws). RandomState has no axis kwarg; defaults to 0.",
      "numpy_ref": "np.random.RandomState.permutation",
      "slug": "random-RandomState-permutation",
      "status": "supported",
      "summary": "Randomly permute a sequence, or return a permuted range.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/poisson",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/poisson/",
      "detail_json_href": "/api-data/ops/random-RandomState-poisson.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.poisson",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.poisson",
      "notes": "Legacy Poisson sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.poisson",
      "slug": "random-RandomState-poisson",
      "status": "supported",
      "summary": "Draw samples from a Poisson distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/power",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/power/",
      "detail_json_href": "/api-data/ops/random-RandomState-power.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.power",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.power",
      "notes": "Legacy power sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.power",
      "slug": "random-RandomState-power",
      "status": "supported",
      "summary": "Draws samples in [0, 1] from a power distribution with positive exponent a - 1.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/rand",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/rand/",
      "detail_json_href": "/api-data/ops/random-RandomState-rand.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.rand",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.rand",
      "notes": "Legacy uniform [0,1); cost = numel(output).",
      "numpy_ref": "np.random.RandomState.rand",
      "slug": "random-RandomState-rand",
      "status": "supported",
      "summary": "Random values in a given shape.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/randint",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/randint/",
      "detail_json_href": "/api-data/ops/random-RandomState-randint.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.randint",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.randint",
      "notes": "Legacy integer sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.randint",
      "slug": "random-RandomState-randint",
      "status": "supported",
      "summary": "Return random integers from `low` (inclusive) to `high` (exclusive).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/randn",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/randn/",
      "detail_json_href": "/api-data/ops/random-RandomState-randn.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.randn",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.randn",
      "notes": "Legacy standard normal alias; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.randn",
      "slug": "random-RandomState-randn",
      "status": "supported",
      "summary": "Return a sample (or samples) from the \"standard normal\" distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/random",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/random/",
      "detail_json_href": "/api-data/ops/random-RandomState-random.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.random",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.random",
      "notes": "Legacy uniform [0,1) alias for random_sample.",
      "numpy_ref": "np.random.RandomState.random",
      "slug": "random-RandomState-random",
      "status": "supported",
      "summary": "Return random floats in the half-open interval [0.0, 1.0). Alias for `random_sample` to ease forward-porting to the new random API.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/random-integers",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/random-integers/",
      "detail_json_href": "/api-data/ops/random-RandomState-random_integers.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.random_integers",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.random_integers",
      "notes": "Legacy deprecated integer sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.random_integers",
      "slug": "random-RandomState-random_integers",
      "status": "supported",
      "summary": "Random integers of type `flops.int_` between `low` and `high`, inclusive.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/random-sample",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/random-sample/",
      "detail_json_href": "/api-data/ops/random-RandomState-random_sample.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.random_sample",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.random_sample",
      "notes": "Legacy uniform [0,1); cost = numel(output).",
      "numpy_ref": "np.random.RandomState.random_sample",
      "slug": "random-RandomState-random_sample",
      "status": "supported",
      "summary": "Return random floats in the half-open interval [0.0, 1.0).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/rayleigh",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/rayleigh/",
      "detail_json_href": "/api-data/ops/random-RandomState-rayleigh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.rayleigh",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.rayleigh",
      "notes": "Legacy Rayleigh sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.rayleigh",
      "slug": "random-RandomState-rayleigh",
      "status": "supported",
      "summary": "Draw samples from a Rayleigh distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/seed",
      "category": "free_random_method",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/random-state/seed/",
      "detail_json_href": "/api-data/ops/random-RandomState-seed.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.RandomState.seed",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.seed",
      "notes": "Seed setter; no math.",
      "numpy_ref": "np.random.RandomState.seed",
      "slug": "random-RandomState-seed",
      "status": "supported",
      "summary": "Reseed a legacy MT19937 BitGenerator",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/set-state",
      "category": "free_random_method",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/random-state/set-state/",
      "detail_json_href": "/api-data/ops/random-RandomState-set_state.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.RandomState.set_state",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.set_state",
      "notes": "State setter; no math.",
      "numpy_ref": "np.random.RandomState.set_state",
      "slug": "random-RandomState-set_state",
      "status": "supported",
      "summary": "Set the internal state of the generator from a tuple.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/shuffle",
      "category": "counted_random_method",
      "cost_formula": "shape[axis]",
      "cost_formula_latex": "$\\text{shape}[\\text{axis}]$",
      "detail_href": "/docs/api/numpy/random/random-state/shuffle/",
      "detail_json_href": "/api-data/ops/random-RandomState-shuffle.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.shuffle",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.shuffle",
      "notes": "Legacy in-place shuffle; cost = shape[axis] (Fisher-Yates draws). RandomState has no axis kwarg; defaults to 0.",
      "numpy_ref": "np.random.RandomState.shuffle",
      "slug": "random-RandomState-shuffle",
      "status": "supported",
      "summary": "Modify a sequence in-place by shuffling its contents.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/standard-cauchy",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/standard-cauchy/",
      "detail_json_href": "/api-data/ops/random-RandomState-standard_cauchy.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.standard_cauchy",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.standard_cauchy",
      "notes": "Legacy standard Cauchy; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.standard_cauchy",
      "slug": "random-RandomState-standard_cauchy",
      "status": "supported",
      "summary": "Draw samples from a standard Cauchy distribution with mode = 0.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/standard-exponential",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/standard-exponential/",
      "detail_json_href": "/api-data/ops/random-RandomState-standard_exponential.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.standard_exponential",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.standard_exponential",
      "notes": "Legacy standard exponential; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.standard_exponential",
      "slug": "random-RandomState-standard_exponential",
      "status": "supported",
      "summary": "Draw samples from the standard exponential distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/standard-gamma",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/standard-gamma/",
      "detail_json_href": "/api-data/ops/random-RandomState-standard_gamma.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.standard_gamma",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.standard_gamma",
      "notes": "Legacy standard gamma; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.standard_gamma",
      "slug": "random-RandomState-standard_gamma",
      "status": "supported",
      "summary": "Draw samples from a standard Gamma distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/standard-normal",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/standard-normal/",
      "detail_json_href": "/api-data/ops/random-RandomState-standard_normal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.standard_normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.standard_normal",
      "notes": "Legacy standard normal; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.standard_normal",
      "slug": "random-RandomState-standard_normal",
      "status": "supported",
      "summary": "Draw samples from a standard Normal distribution (mean=0, stdev=1).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/standard-t",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/standard-t/",
      "detail_json_href": "/api-data/ops/random-RandomState-standard_t.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.standard_t",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.standard_t",
      "notes": "Legacy standard Student-t; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.standard_t",
      "slug": "random-RandomState-standard_t",
      "status": "supported",
      "summary": "Draw samples from a standard Student's t distribution with `df` degrees of freedom.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/tomaxint",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/tomaxint/",
      "detail_json_href": "/api-data/ops/random-RandomState-tomaxint.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.tomaxint",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.tomaxint",
      "notes": "Legacy max-int sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.tomaxint",
      "slug": "random-RandomState-tomaxint",
      "status": "supported",
      "summary": "Return a sample of uniformly distributed random integers in the interval [0, ``flops.iinfo(\"long\").max``].",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/triangular",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/triangular/",
      "detail_json_href": "/api-data/ops/random-RandomState-triangular.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.triangular",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.triangular",
      "notes": "Legacy triangular distribution; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.triangular",
      "slug": "random-RandomState-triangular",
      "status": "supported",
      "summary": "Draw samples from the triangular distribution over the interval ``[left, right]``.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/uniform",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/uniform/",
      "detail_json_href": "/api-data/ops/random-RandomState-uniform.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.uniform",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.uniform",
      "notes": "Legacy uniform sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.uniform",
      "slug": "random-RandomState-uniform",
      "status": "supported",
      "summary": "Draw samples from a uniform distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/vonmises",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/vonmises/",
      "detail_json_href": "/api-data/ops/random-RandomState-vonmises.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.vonmises",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.vonmises",
      "notes": "Legacy Von Mises sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.vonmises",
      "slug": "random-RandomState-vonmises",
      "status": "supported",
      "summary": "Draw samples from a von Mises distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/wald",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/wald/",
      "detail_json_href": "/api-data/ops/random-RandomState-wald.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.wald",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.wald",
      "notes": "Legacy Wald sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.wald",
      "slug": "random-RandomState-wald",
      "status": "supported",
      "summary": "Draw samples from a Wald, or inverse Gaussian, distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/weibull",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/weibull/",
      "detail_json_href": "/api-data/ops/random-RandomState-weibull.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.weibull",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.weibull",
      "notes": "Legacy Weibull sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.weibull",
      "slug": "random-RandomState-weibull",
      "status": "supported",
      "summary": "Draw samples from a Weibull distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-state/zipf",
      "category": "counted_random_method",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/random/random-state/zipf/",
      "detail_json_href": "/api-data/ops/random-RandomState-zipf.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.random.RandomState.zipf",
      "free": false,
      "module": "numpy.random",
      "name": "random.RandomState.zipf",
      "notes": "Legacy Zipf sampler; cost = numel(output).",
      "numpy_ref": "np.random.RandomState.zipf",
      "slug": "random-RandomState-zipf",
      "status": "supported",
      "summary": "Draw samples from a Zipf distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/beta",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/beta/",
      "detail_json_href": "/api-data/ops/random-beta.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.beta",
      "free": false,
      "module": "numpy.random",
      "name": "random.beta",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.beta",
      "slug": "random-beta",
      "status": "supported",
      "summary": "Draw samples from a Beta distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/binomial",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/binomial/",
      "detail_json_href": "/api-data/ops/random-binomial.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.binomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.binomial",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.binomial",
      "slug": "random-binomial",
      "status": "supported",
      "summary": "Draw samples from a binomial distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/bytes",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/bytes/",
      "detail_json_href": "/api-data/ops/random-bytes.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.bytes",
      "free": false,
      "module": "numpy.random",
      "name": "random.bytes",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.bytes",
      "slug": "random-bytes",
      "status": "supported",
      "summary": "Return random bytes.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/chisquare",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/chisquare/",
      "detail_json_href": "/api-data/ops/random-chisquare.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.chisquare",
      "free": false,
      "module": "numpy.random",
      "name": "random.chisquare",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.chisquare",
      "slug": "random-chisquare",
      "status": "supported",
      "summary": "Draw samples from a chi-square distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/choice",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/choice/",
      "detail_json_href": "/api-data/ops/random-choice.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.choice",
      "free": false,
      "module": "numpy.random",
      "name": "random.choice",
      "notes": "Sampling; cost = numel(output) if replace, n*ceil(log2(n)) if not.",
      "numpy_ref": "np.random.choice",
      "slug": "random-choice",
      "status": "supported",
      "summary": "Generates a random sample from a given 1-D array",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/default-rng",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/default-rng/",
      "detail_json_href": "/api-data/ops/random-default_rng.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.default_rng",
      "free": true,
      "module": "numpy.random",
      "name": "random.default_rng",
      "notes": "Construct a new Generator with default BitGenerator.",
      "numpy_ref": "np.random.default_rng",
      "slug": "random-default_rng",
      "status": "supported",
      "summary": "default_rng(seed=None) Construct a new Generator with the default BitGenerator (PCG64).",
      "weight": 0.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/dirichlet",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/dirichlet/",
      "detail_json_href": "/api-data/ops/random-dirichlet.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.dirichlet",
      "free": false,
      "module": "numpy.random",
      "name": "random.dirichlet",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.dirichlet",
      "slug": "random-dirichlet",
      "status": "supported",
      "summary": "Draw samples from the Dirichlet distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/exponential",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/exponential/",
      "detail_json_href": "/api-data/ops/random-exponential.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.exponential",
      "free": false,
      "module": "numpy.random",
      "name": "random.exponential",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.exponential",
      "slug": "random-exponential",
      "status": "supported",
      "summary": "Draw samples from an exponential distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/f",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/f/",
      "detail_json_href": "/api-data/ops/random-f.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.f",
      "free": false,
      "module": "numpy.random",
      "name": "random.f",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.f",
      "slug": "random-f",
      "status": "supported",
      "summary": "Draw samples from an F distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/gamma",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/gamma/",
      "detail_json_href": "/api-data/ops/random-gamma.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.gamma",
      "free": false,
      "module": "numpy.random",
      "name": "random.gamma",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.gamma",
      "slug": "random-gamma",
      "status": "supported",
      "summary": "Draw samples from a Gamma distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/geometric",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/geometric/",
      "detail_json_href": "/api-data/ops/random-geometric.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.geometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.geometric",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.geometric",
      "slug": "random-geometric",
      "status": "supported",
      "summary": "Draw samples from the geometric distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/get-state",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/get-state/",
      "detail_json_href": "/api-data/ops/random-get_state.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.get_state",
      "free": true,
      "module": "numpy.random",
      "name": "random.get_state",
      "notes": "Return tuple representing internal state of generator.",
      "numpy_ref": "np.random.get_state",
      "slug": "random-get_state",
      "status": "supported",
      "summary": "Return a tuple representing the internal state of the generator.",
      "weight": 0.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/gumbel",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/gumbel/",
      "detail_json_href": "/api-data/ops/random-gumbel.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.gumbel",
      "free": false,
      "module": "numpy.random",
      "name": "random.gumbel",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.gumbel",
      "slug": "random-gumbel",
      "status": "supported",
      "summary": "Draw samples from a Gumbel distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/hypergeometric",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/hypergeometric/",
      "detail_json_href": "/api-data/ops/random-hypergeometric.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.hypergeometric",
      "free": false,
      "module": "numpy.random",
      "name": "random.hypergeometric",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.hypergeometric",
      "slug": "random-hypergeometric",
      "status": "supported",
      "summary": "Draw samples from a Hypergeometric distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/laplace",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/laplace/",
      "detail_json_href": "/api-data/ops/random-laplace.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.laplace",
      "free": false,
      "module": "numpy.random",
      "name": "random.laplace",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.laplace",
      "slug": "random-laplace",
      "status": "supported",
      "summary": "Draw samples from the Laplace or double exponential distribution with specified location (or mean) and scale (decay).",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/logistic",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/logistic/",
      "detail_json_href": "/api-data/ops/random-logistic.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.logistic",
      "free": false,
      "module": "numpy.random",
      "name": "random.logistic",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.logistic",
      "slug": "random-logistic",
      "status": "supported",
      "summary": "Draw samples from a logistic distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/lognormal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/lognormal/",
      "detail_json_href": "/api-data/ops/random-lognormal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.lognormal",
      "free": false,
      "module": "numpy.random",
      "name": "random.lognormal",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.lognormal",
      "slug": "random-lognormal",
      "status": "supported",
      "summary": "Draw samples from a log-normal distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/logseries",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/logseries/",
      "detail_json_href": "/api-data/ops/random-logseries.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.logseries",
      "free": false,
      "module": "numpy.random",
      "name": "random.logseries",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.logseries",
      "slug": "random-logseries",
      "status": "supported",
      "summary": "Draw samples from a logarithmic series distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/multinomial",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/multinomial/",
      "detail_json_href": "/api-data/ops/random-multinomial.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.multinomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.multinomial",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.multinomial",
      "slug": "random-multinomial",
      "status": "supported",
      "summary": "Draw samples from a multinomial distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/multivariate-normal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/multivariate-normal/",
      "detail_json_href": "/api-data/ops/random-multivariate_normal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.multivariate_normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.multivariate_normal",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.multivariate_normal",
      "slug": "random-multivariate_normal",
      "status": "supported",
      "summary": "Draw random samples from a multivariate normal distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/negative-binomial",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/negative-binomial/",
      "detail_json_href": "/api-data/ops/random-negative_binomial.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.negative_binomial",
      "free": false,
      "module": "numpy.random",
      "name": "random.negative_binomial",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.negative_binomial",
      "slug": "random-negative_binomial",
      "status": "supported",
      "summary": "Draw samples from a negative binomial distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/noncentral-chisquare",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/noncentral-chisquare/",
      "detail_json_href": "/api-data/ops/random-noncentral_chisquare.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.noncentral_chisquare",
      "free": false,
      "module": "numpy.random",
      "name": "random.noncentral_chisquare",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.noncentral_chisquare",
      "slug": "random-noncentral_chisquare",
      "status": "supported",
      "summary": "Draw samples from a noncentral chi-square distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/noncentral-f",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/noncentral-f/",
      "detail_json_href": "/api-data/ops/random-noncentral_f.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.noncentral_f",
      "free": false,
      "module": "numpy.random",
      "name": "random.noncentral_f",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.noncentral_f",
      "slug": "random-noncentral_f",
      "status": "supported",
      "summary": "Draw samples from the noncentral F distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/normal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/normal/",
      "detail_json_href": "/api-data/ops/random-normal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.normal",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.normal",
      "slug": "random-normal",
      "status": "supported",
      "summary": "Draw random samples from a normal (Gaussian) distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/pareto",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/pareto/",
      "detail_json_href": "/api-data/ops/random-pareto.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.pareto",
      "free": false,
      "module": "numpy.random",
      "name": "random.pareto",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.pareto",
      "slug": "random-pareto",
      "status": "supported",
      "summary": "Draw samples from a Pareto II or Lomax distribution with specified shape.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/permutation",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/permutation/",
      "detail_json_href": "/api-data/ops/random-permutation.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.permutation",
      "free": false,
      "module": "numpy.random",
      "name": "random.permutation",
      "notes": "Shuffle; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.random.permutation",
      "slug": "random-permutation",
      "status": "supported",
      "summary": "Randomly permute a sequence, or return a permuted range.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/poisson",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/poisson/",
      "detail_json_href": "/api-data/ops/random-poisson.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.poisson",
      "free": false,
      "module": "numpy.random",
      "name": "random.poisson",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.poisson",
      "slug": "random-poisson",
      "status": "supported",
      "summary": "Draw samples from a Poisson distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/power",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/power/",
      "detail_json_href": "/api-data/ops/random-power.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.power",
      "free": false,
      "module": "numpy.random",
      "name": "random.power",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.power",
      "slug": "random-power",
      "status": "supported",
      "summary": "Draws samples in [0, 1] from a power distribution with positive exponent a - 1.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/rand",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/rand/",
      "detail_json_href": "/api-data/ops/random-rand.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.rand",
      "free": false,
      "module": "numpy.random",
      "name": "random.rand",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.rand",
      "slug": "random-rand",
      "status": "supported",
      "summary": "Random values in a given shape.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/randint",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/randint/",
      "detail_json_href": "/api-data/ops/random-randint.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.randint",
      "free": false,
      "module": "numpy.random",
      "name": "random.randint",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.randint",
      "slug": "random-randint",
      "status": "supported",
      "summary": "Return random integers from `low` (inclusive) to `high` (exclusive).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/randn",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/randn/",
      "detail_json_href": "/api-data/ops/random-randn.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.randn",
      "free": false,
      "module": "numpy.random",
      "name": "random.randn",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.randn",
      "slug": "random-randn",
      "status": "supported",
      "summary": "Return a sample (or samples) from the \"standard normal\" distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/random/",
      "detail_json_href": "/api-data/ops/random-random.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.random",
      "free": false,
      "module": "numpy.random",
      "name": "random.random",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.random",
      "slug": "random-random",
      "status": "supported",
      "summary": "Return random floats in the half-open interval [0.0, 1.0). Alias for `random_sample` to ease forward-porting to the new random API.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-integers",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/random-integers/",
      "detail_json_href": "/api-data/ops/random-random_integers.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.random_integers",
      "free": false,
      "module": "numpy.random",
      "name": "random.random_integers",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.random_integers",
      "slug": "random-random_integers",
      "status": "supported",
      "summary": "Random integers of type `flops.int_` between `low` and `high`, inclusive.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/random-sample",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/random-sample/",
      "detail_json_href": "/api-data/ops/random-random_sample.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.random_sample",
      "free": false,
      "module": "numpy.random",
      "name": "random.random_sample",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.random_sample",
      "slug": "random-random_sample",
      "status": "supported",
      "summary": "Return random floats in the half-open interval [0.0, 1.0).",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/rayleigh",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/rayleigh/",
      "detail_json_href": "/api-data/ops/random-rayleigh.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.rayleigh",
      "free": false,
      "module": "numpy.random",
      "name": "random.rayleigh",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.rayleigh",
      "slug": "random-rayleigh",
      "status": "supported",
      "summary": "Draw samples from a Rayleigh distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/seed",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/seed/",
      "detail_json_href": "/api-data/ops/random-seed.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.seed",
      "free": true,
      "module": "numpy.random",
      "name": "random.seed",
      "notes": "Seed random number generator.",
      "numpy_ref": "np.random.seed",
      "slug": "random-seed",
      "status": "supported",
      "summary": "Reseed the singleton RandomState instance.",
      "weight": 0.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/set-state",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/random/set-state/",
      "detail_json_href": "/api-data/ops/random-set_state.json",
      "display_type": "free",
      "flopscope_ref": "fnp.random.set_state",
      "free": true,
      "module": "numpy.random",
      "name": "random.set_state",
      "notes": "Set internal state of generator.",
      "numpy_ref": "np.random.set_state",
      "slug": "random-set_state",
      "status": "supported",
      "summary": "Set the internal state of the generator from a tuple.",
      "weight": 0.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/shuffle",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/shuffle/",
      "detail_json_href": "/api-data/ops/random-shuffle.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.shuffle",
      "free": false,
      "module": "numpy.random",
      "name": "random.shuffle",
      "notes": "Shuffle; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.random.shuffle",
      "slug": "random-shuffle",
      "status": "supported",
      "summary": "Modify a sequence in-place by shuffling its contents.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/standard-cauchy",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/standard-cauchy/",
      "detail_json_href": "/api-data/ops/random-standard_cauchy.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.standard_cauchy",
      "free": false,
      "module": "numpy.random",
      "name": "random.standard_cauchy",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.standard_cauchy",
      "slug": "random-standard_cauchy",
      "status": "supported",
      "summary": "Draw samples from a standard Cauchy distribution with mode = 0.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/standard-exponential",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/standard-exponential/",
      "detail_json_href": "/api-data/ops/random-standard_exponential.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.standard_exponential",
      "free": false,
      "module": "numpy.random",
      "name": "random.standard_exponential",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.standard_exponential",
      "slug": "random-standard_exponential",
      "status": "supported",
      "summary": "Draw samples from the standard exponential distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/standard-gamma",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/standard-gamma/",
      "detail_json_href": "/api-data/ops/random-standard_gamma.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.standard_gamma",
      "free": false,
      "module": "numpy.random",
      "name": "random.standard_gamma",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.standard_gamma",
      "slug": "random-standard_gamma",
      "status": "supported",
      "summary": "Draw samples from a standard Gamma distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/standard-normal",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/standard-normal/",
      "detail_json_href": "/api-data/ops/random-standard_normal.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.standard_normal",
      "free": false,
      "module": "numpy.random",
      "name": "random.standard_normal",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.standard_normal",
      "slug": "random-standard_normal",
      "status": "supported",
      "summary": "Draw samples from a standard Normal distribution (mean=0, stdev=1).",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/standard-t",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/standard-t/",
      "detail_json_href": "/api-data/ops/random-standard_t.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.standard_t",
      "free": false,
      "module": "numpy.random",
      "name": "random.standard_t",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.standard_t",
      "slug": "random-standard_t",
      "status": "supported",
      "summary": "Draw samples from a standard Student's t distribution with `df` degrees of freedom.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/triangular",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/triangular/",
      "detail_json_href": "/api-data/ops/random-triangular.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.triangular",
      "free": false,
      "module": "numpy.random",
      "name": "random.triangular",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.triangular",
      "slug": "random-triangular",
      "status": "supported",
      "summary": "Draw samples from the triangular distribution over the interval ``[left, right]``.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/uniform",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/uniform/",
      "detail_json_href": "/api-data/ops/random-uniform.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.uniform",
      "free": false,
      "module": "numpy.random",
      "name": "random.uniform",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.uniform",
      "slug": "random-uniform",
      "status": "supported",
      "summary": "Draw samples from a uniform distribution.",
      "weight": 1.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/vonmises",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/vonmises/",
      "detail_json_href": "/api-data/ops/random-vonmises.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.vonmises",
      "free": false,
      "module": "numpy.random",
      "name": "random.vonmises",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.vonmises",
      "slug": "random-vonmises",
      "status": "supported",
      "summary": "Draw samples from a von Mises distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/wald",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/wald/",
      "detail_json_href": "/api-data/ops/random-wald.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.wald",
      "free": false,
      "module": "numpy.random",
      "name": "random.wald",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.wald",
      "slug": "random-wald",
      "status": "supported",
      "summary": "Draw samples from a Wald, or inverse Gaussian, distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/weibull",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/weibull/",
      "detail_json_href": "/api-data/ops/random-weibull.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.weibull",
      "free": false,
      "module": "numpy.random",
      "name": "random.weibull",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.weibull",
      "slug": "random-weibull",
      "status": "supported",
      "summary": "Draw samples from a Weibull distribution.",
      "weight": 16.0
    },
    {
      "area": "random",
      "blocked": false,
      "canonical_path": "numpy/random/zipf",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/random/zipf/",
      "detail_json_href": "/api-data/ops/random-zipf.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.random.zipf",
      "free": false,
      "module": "numpy.random",
      "name": "random.zipf",
      "notes": "Sampling; cost = numel(output).",
      "numpy_ref": "np.random.zipf",
      "slug": "random-zipf",
      "status": "supported",
      "summary": "Draw samples from a Zipf distribution.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ravel",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/ravel/",
      "detail_json_href": "/api-data/ops/ravel.json",
      "display_type": "free",
      "flopscope_ref": "fnp.ravel",
      "free": true,
      "module": "numpy",
      "name": "ravel",
      "notes": "Return contiguous flattened array. Cost: numel(input).",
      "numpy_ref": "np.ravel",
      "slug": "ravel",
      "status": "supported",
      "summary": "Return a contiguous flattened array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/ravel-multi-index",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/ravel-multi-index/",
      "detail_json_href": "/api-data/ops/ravel_multi_index.json",
      "display_type": "free",
      "flopscope_ref": "fnp.ravel_multi_index",
      "free": true,
      "module": "numpy",
      "name": "ravel_multi_index",
      "notes": "Convert multi-dimensional index to flat index.",
      "numpy_ref": "np.ravel_multi_index",
      "slug": "ravel_multi_index",
      "status": "supported",
      "summary": "Converts a tuple of index arrays into an array of flat indices, applying boundary modes to the multi-index.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/real",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/real/",
      "detail_json_href": "/api-data/ops/real.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.real",
      "free": false,
      "module": "numpy",
      "name": "real",
      "notes": "Return real part of complex array.",
      "numpy_ref": "np.real",
      "slug": "real",
      "status": "supported",
      "summary": "Return the real part of the complex argument.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/real-if-close",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/real-if-close/",
      "detail_json_href": "/api-data/ops/real_if_close.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.real_if_close",
      "free": false,
      "module": "numpy",
      "name": "real_if_close",
      "notes": "Return real array if imaginary part is negligible.",
      "numpy_ref": "np.real_if_close",
      "slug": "real_if_close",
      "status": "supported",
      "summary": "If input is complex with all imaginary parts close to zero, return real parts.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/reciprocal",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/reciprocal/",
      "detail_json_href": "/api-data/ops/reciprocal.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.reciprocal",
      "free": false,
      "module": "numpy",
      "name": "reciprocal",
      "notes": "Element-wise 1/x.",
      "numpy_ref": "np.reciprocal",
      "slug": "reciprocal",
      "status": "supported",
      "summary": "Return the reciprocal of the argument, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/remainder",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/remainder/",
      "detail_json_href": "/api-data/ops/remainder.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.remainder",
      "free": false,
      "module": "numpy",
      "name": "remainder",
      "notes": "Element-wise remainder (same as mod).",
      "numpy_ref": "np.remainder",
      "slug": "remainder",
      "status": "supported",
      "summary": "Returns the element-wise remainder of division.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/repeat",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/repeat/",
      "detail_json_href": "/api-data/ops/repeat.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.repeat",
      "free": false,
      "module": "numpy",
      "name": "repeat",
      "notes": "Repeat elements of an array. Cost: numel(output).",
      "numpy_ref": "np.repeat",
      "slug": "repeat",
      "status": "supported",
      "summary": "Repeat each element of an array after themselves",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/require",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/require/",
      "detail_json_href": "/api-data/ops/require.json",
      "display_type": "free",
      "flopscope_ref": "fnp.require",
      "free": true,
      "module": "numpy",
      "name": "require",
      "notes": "Return array that satisfies requirements.",
      "numpy_ref": "np.require",
      "slug": "require",
      "status": "supported",
      "summary": "Return an ndarray of the provided type that satisfies requirements.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/reshape",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/reshape/",
      "detail_json_href": "/api-data/ops/reshape.json",
      "display_type": "free",
      "flopscope_ref": "fnp.reshape",
      "free": true,
      "module": "numpy",
      "name": "reshape",
      "notes": "Reshape array without copying.",
      "numpy_ref": "np.reshape",
      "slug": "reshape",
      "status": "supported",
      "summary": "Gives a new shape to an array without changing its data.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/resize",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/resize/",
      "detail_json_href": "/api-data/ops/resize.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.resize",
      "free": false,
      "module": "numpy",
      "name": "resize",
      "notes": "Return new array with given shape by repeating. Cost: numel(output).",
      "numpy_ref": "np.resize",
      "slug": "resize",
      "status": "supported",
      "summary": "Return a new array with the specified shape.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/result-type",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/result-type/",
      "detail_json_href": "/api-data/ops/result_type.json",
      "display_type": "free",
      "flopscope_ref": "fnp.result_type",
      "free": true,
      "module": "numpy",
      "name": "result_type",
      "notes": "Return type that results from applying NumPy type promotion.",
      "numpy_ref": "np.result_type",
      "slug": "result_type",
      "status": "supported",
      "summary": "Returns the type that results from applying the NumPy type promotion rules to the arguments.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/right-shift",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/right-shift/",
      "detail_json_href": "/api-data/ops/right_shift.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.right_shift",
      "free": false,
      "module": "numpy",
      "name": "right_shift",
      "notes": "Element-wise right bit shift (legacy name).",
      "numpy_ref": "np.right_shift",
      "slug": "right_shift",
      "status": "supported",
      "summary": "Shift the bits of an integer to the right.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/rint",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/rint/",
      "detail_json_href": "/api-data/ops/rint.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.rint",
      "free": false,
      "module": "numpy",
      "name": "rint",
      "notes": "Round to nearest integer element-wise.",
      "numpy_ref": "np.rint",
      "slug": "rint",
      "status": "supported",
      "summary": "Round elements of the array to the nearest integer.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/roll",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/roll/",
      "detail_json_href": "/api-data/ops/roll.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.roll",
      "free": false,
      "module": "numpy",
      "name": "roll",
      "notes": "Roll array elements along axis. Cost: numel(output).",
      "numpy_ref": "np.roll",
      "slug": "roll",
      "status": "supported",
      "summary": "Roll array elements along a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/rollaxis",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/rollaxis/",
      "detail_json_href": "/api-data/ops/rollaxis.json",
      "display_type": "free",
      "flopscope_ref": "fnp.rollaxis",
      "free": true,
      "module": "numpy",
      "name": "rollaxis",
      "notes": "Roll specified axis backwards. Cost: numel(output).",
      "numpy_ref": "np.rollaxis",
      "slug": "rollaxis",
      "status": "supported",
      "summary": "Roll the specified axis backwards, until it lies in a given position.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/roots",
      "category": "counted_custom",
      "cost_formula": "10n^3",
      "cost_formula_latex": "$10n^3$",
      "detail_href": "/docs/api/numpy/roots/",
      "detail_json_href": "/api-data/ops/roots.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.roots",
      "free": false,
      "module": "flopscope._polynomial",
      "name": "roots",
      "notes": "Return roots of polynomial with given coefficients. Cost: $n^3$ (companion matrix eig, simplified).",
      "numpy_ref": "np.roots",
      "slug": "roots",
      "status": "supported",
      "summary": "Return the roots of a polynomial with coefficients given in p.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/rot90",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/rot90/",
      "detail_json_href": "/api-data/ops/rot90.json",
      "display_type": "free",
      "flopscope_ref": "fnp.rot90",
      "free": true,
      "module": "numpy",
      "name": "rot90",
      "notes": "Rotate array 90 degrees.",
      "numpy_ref": "np.rot90",
      "slug": "rot90",
      "status": "supported",
      "summary": "Rotate an array by 90 degrees in the plane specified by axes.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/row-stack",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/row-stack/",
      "detail_json_href": "/api-data/ops/row_stack.json",
      "display_type": "free",
      "flopscope_ref": "fnp.row_stack",
      "free": true,
      "module": "numpy",
      "name": "row_stack",
      "notes": "Stack arrays vertically (alias for vstack).",
      "numpy_ref": "np.row_stack",
      "slug": "row_stack",
      "status": "supported",
      "summary": "Stack arrays in sequence vertically (row wise).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/searchsorted",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/searchsorted/",
      "detail_json_href": "/api-data/ops/searchsorted.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.searchsorted",
      "free": false,
      "module": "numpy",
      "name": "searchsorted",
      "notes": "Binary search; cost = m*ceil(log2(n)).",
      "numpy_ref": "np.searchsorted",
      "slug": "searchsorted",
      "status": "supported",
      "summary": "Find indices where elements should be inserted to maintain order.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/select",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/select/",
      "detail_json_href": "/api-data/ops/select.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.select",
      "free": false,
      "module": "numpy",
      "name": "select",
      "notes": "Return array from list of choices based on conditions. Cost: numel(input).",
      "numpy_ref": "np.select",
      "slug": "select",
      "status": "supported",
      "summary": "Return an array drawn from elements in choicelist, depending on conditions.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/setdiff1d",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/setdiff1d/",
      "detail_json_href": "/api-data/ops/setdiff1d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.setdiff1d",
      "free": false,
      "module": "numpy",
      "name": "setdiff1d",
      "notes": "Set difference; cost = (n+m)*ceil(log2(n+m)).",
      "numpy_ref": "np.setdiff1d",
      "slug": "setdiff1d",
      "status": "supported",
      "summary": "Find the set difference of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/setxor1d",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/setxor1d/",
      "detail_json_href": "/api-data/ops/setxor1d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.setxor1d",
      "free": false,
      "module": "numpy",
      "name": "setxor1d",
      "notes": "Symmetric set difference; cost = (n+m)*ceil(log2(n+m)).",
      "numpy_ref": "np.setxor1d",
      "slug": "setxor1d",
      "status": "supported",
      "summary": "Find the set exclusive-or of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/shape",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/shape/",
      "detail_json_href": "/api-data/ops/shape.json",
      "display_type": "free",
      "flopscope_ref": "fnp.shape",
      "free": true,
      "module": "numpy",
      "name": "shape",
      "notes": "Return shape of array.",
      "numpy_ref": "np.shape",
      "slug": "shape",
      "status": "supported",
      "summary": "Return the shape of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/shares-memory",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/shares-memory/",
      "detail_json_href": "/api-data/ops/shares_memory.json",
      "display_type": "free",
      "flopscope_ref": "fnp.shares_memory",
      "free": true,
      "module": "numpy",
      "name": "shares_memory",
      "notes": "Determine if two arrays share memory.",
      "numpy_ref": "np.shares_memory",
      "slug": "shares_memory",
      "status": "supported",
      "summary": "Determine if two arrays share memory.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sign",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/sign/",
      "detail_json_href": "/api-data/ops/sign.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.sign",
      "free": false,
      "module": "numpy",
      "name": "sign",
      "notes": "Element-wise sign function.",
      "numpy_ref": "np.sign",
      "slug": "sign",
      "status": "supported",
      "summary": "Returns an element-wise indication of the sign of a number.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/signbit",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/signbit/",
      "detail_json_href": "/api-data/ops/signbit.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.signbit",
      "free": false,
      "module": "numpy",
      "name": "signbit",
      "notes": "Returns True for elements with negative sign bit.",
      "numpy_ref": "np.signbit",
      "slug": "signbit",
      "status": "supported",
      "summary": "Returns element-wise True where signbit is set (less than zero).",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sin",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/sin/",
      "detail_json_href": "/api-data/ops/sin.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.sin",
      "free": false,
      "module": "numpy",
      "name": "sin",
      "notes": "Element-wise sine.",
      "numpy_ref": "np.sin",
      "slug": "sin",
      "status": "supported",
      "summary": "Trigonometric sine, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sinc",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/sinc/",
      "detail_json_href": "/api-data/ops/sinc.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.sinc",
      "free": false,
      "module": "numpy",
      "name": "sinc",
      "notes": "Normalized sinc function element-wise.",
      "numpy_ref": "np.sinc",
      "slug": "sinc",
      "status": "supported",
      "summary": "Return the normalized sinc function.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sinh",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/sinh/",
      "detail_json_href": "/api-data/ops/sinh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.sinh",
      "free": false,
      "module": "numpy",
      "name": "sinh",
      "notes": "Element-wise hyperbolic sine.",
      "numpy_ref": "np.sinh",
      "slug": "sinh",
      "status": "supported",
      "summary": "Hyperbolic sine, element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/size",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/size/",
      "detail_json_href": "/api-data/ops/size.json",
      "display_type": "free",
      "flopscope_ref": "fnp.size",
      "free": true,
      "module": "numpy",
      "name": "size",
      "notes": "Return number of elements in array.",
      "numpy_ref": "np.size",
      "slug": "size",
      "status": "supported",
      "summary": "Return the number of elements along a given axis.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sort",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/sort/",
      "detail_json_href": "/api-data/ops/sort.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.sort",
      "free": false,
      "module": "numpy",
      "name": "sort",
      "notes": "Comparison sort; cost = n*ceil(log2(n)) per slice.",
      "numpy_ref": "np.sort",
      "slug": "sort",
      "status": "supported",
      "summary": "Return a sorted copy of an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sort-complex",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/sort-complex/",
      "detail_json_href": "/api-data/ops/sort_complex.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.sort_complex",
      "free": false,
      "module": "numpy",
      "name": "sort_complex",
      "notes": "Sort complex array. Cost: $n \\cdot \\lceil\\log_2 n\\rceil$.",
      "numpy_ref": "np.sort_complex",
      "slug": "sort_complex",
      "status": "supported",
      "summary": "Sort a complex array using the real part first, then the imaginary part.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/spacing",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/spacing/",
      "detail_json_href": "/api-data/ops/spacing.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.spacing",
      "free": false,
      "module": "numpy",
      "name": "spacing",
      "notes": "Return ULP spacing for each element.",
      "numpy_ref": "np.spacing",
      "slug": "spacing",
      "status": "supported",
      "summary": "Return the distance between x and the nearest adjacent number.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/split",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/split/",
      "detail_json_href": "/api-data/ops/split.json",
      "display_type": "free",
      "flopscope_ref": "fnp.split",
      "free": true,
      "module": "numpy",
      "name": "split",
      "notes": "Split array into sub-arrays. Cost: numel(output).",
      "numpy_ref": "np.split",
      "slug": "split",
      "status": "supported",
      "summary": "Split an array into multiple sub-arrays as views into `ary`.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sqrt",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/sqrt/",
      "detail_json_href": "/api-data/ops/sqrt.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.sqrt",
      "free": false,
      "module": "numpy",
      "name": "sqrt",
      "notes": "Element-wise square root.",
      "numpy_ref": "np.sqrt",
      "slug": "sqrt",
      "status": "supported",
      "summary": "Return the non-negative square-root of an array, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/square",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/square/",
      "detail_json_href": "/api-data/ops/square.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.square",
      "free": false,
      "module": "numpy",
      "name": "square",
      "notes": "Element-wise x^2.",
      "numpy_ref": "np.square",
      "slug": "square",
      "status": "supported",
      "summary": "Return the element-wise square of the input.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/squeeze",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/squeeze/",
      "detail_json_href": "/api-data/ops/squeeze.json",
      "display_type": "free",
      "flopscope_ref": "fnp.squeeze",
      "free": true,
      "module": "numpy",
      "name": "squeeze",
      "notes": "Remove size-1 dimensions.",
      "numpy_ref": "np.squeeze",
      "slug": "squeeze",
      "status": "supported",
      "summary": "Remove axes of length one from `a`.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/stack",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/stack/",
      "detail_json_href": "/api-data/ops/stack.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.stack",
      "free": false,
      "module": "numpy",
      "name": "stack",
      "notes": "Join arrays along new axis. Cost: numel(output).",
      "numpy_ref": "np.stack",
      "slug": "stack",
      "status": "supported",
      "summary": "Join a sequence of arrays along a new axis.",
      "weight": 1.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/cauchy/cdf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/cauchy/cdf/",
      "detail_json_href": "/api-data/ops/stats-cauchy-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.cauchy.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.cauchy.cdf",
      "notes": "Cauchy CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.cauchy.cdf",
      "slug": "stats-cauchy-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/cauchy/pdf",
      "category": "counted_custom",
      "cost_formula": "6n",
      "cost_formula_latex": "$6n$",
      "detail_href": "/docs/api/stats/cauchy/pdf/",
      "detail_json_href": "/api-data/ops/stats-cauchy-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.cauchy.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.cauchy.pdf",
      "notes": "Cauchy PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.cauchy.pdf",
      "slug": "stats-cauchy-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 4.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/cauchy/ppf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/cauchy/ppf/",
      "detail_json_href": "/api-data/ops/stats-cauchy-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.cauchy.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.cauchy.ppf",
      "notes": "Cauchy PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.cauchy.ppf",
      "slug": "stats-cauchy-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/expon/cdf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/expon/cdf/",
      "detail_json_href": "/api-data/ops/stats-expon-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.expon.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.expon.cdf",
      "notes": "Exponential CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.expon.cdf",
      "slug": "stats-expon-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/expon/pdf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/expon/pdf/",
      "detail_json_href": "/api-data/ops/stats-expon-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.expon.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.expon.pdf",
      "notes": "Exponential PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.expon.pdf",
      "slug": "stats-expon-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/expon/ppf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/expon/ppf/",
      "detail_json_href": "/api-data/ops/stats-expon-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.expon.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.expon.ppf",
      "notes": "Exponential PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.expon.ppf",
      "slug": "stats-expon-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/laplace/cdf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/laplace/cdf/",
      "detail_json_href": "/api-data/ops/stats-laplace-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.laplace.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.laplace.cdf",
      "notes": "Laplace CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.laplace.cdf",
      "slug": "stats-laplace-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/laplace/pdf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/laplace/pdf/",
      "detail_json_href": "/api-data/ops/stats-laplace-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.laplace.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.laplace.pdf",
      "notes": "Laplace PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.laplace.pdf",
      "slug": "stats-laplace-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/laplace/ppf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/laplace/ppf/",
      "detail_json_href": "/api-data/ops/stats-laplace-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.laplace.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.laplace.ppf",
      "notes": "Laplace PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.laplace.ppf",
      "slug": "stats-laplace-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/logistic/cdf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/logistic/cdf/",
      "detail_json_href": "/api-data/ops/stats-logistic-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.logistic.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.logistic.cdf",
      "notes": "Logistic CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.logistic.cdf",
      "slug": "stats-logistic-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/logistic/pdf",
      "category": "counted_custom",
      "cost_formula": "8n",
      "cost_formula_latex": "$8n$",
      "detail_href": "/docs/api/stats/logistic/pdf/",
      "detail_json_href": "/api-data/ops/stats-logistic-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.logistic.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.logistic.pdf",
      "notes": "Logistic PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.logistic.pdf",
      "slug": "stats-logistic-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/logistic/ppf",
      "category": "counted_custom",
      "cost_formula": "5n",
      "cost_formula_latex": "$5n$",
      "detail_href": "/docs/api/stats/logistic/ppf/",
      "detail_json_href": "/api-data/ops/stats-logistic-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.logistic.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.logistic.ppf",
      "notes": "Logistic PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.logistic.ppf",
      "slug": "stats-logistic-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/lognorm/cdf",
      "category": "counted_custom",
      "cost_formula": "25n",
      "cost_formula_latex": "$25n$",
      "detail_href": "/docs/api/stats/lognorm/cdf/",
      "detail_json_href": "/api-data/ops/stats-lognorm-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.lognorm.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.lognorm.cdf",
      "notes": "Log-normal CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.lognorm.cdf",
      "slug": "stats-lognorm-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/lognorm/pdf",
      "category": "counted_custom",
      "cost_formula": "15n",
      "cost_formula_latex": "$15n$",
      "detail_href": "/docs/api/stats/lognorm/pdf/",
      "detail_json_href": "/api-data/ops/stats-lognorm-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.lognorm.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.lognorm.pdf",
      "notes": "Log-normal PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.lognorm.pdf",
      "slug": "stats-lognorm-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/lognorm/ppf",
      "category": "counted_custom",
      "cost_formula": "45n",
      "cost_formula_latex": "$45n$",
      "detail_href": "/docs/api/stats/lognorm/ppf/",
      "detail_json_href": "/api-data/ops/stats-lognorm-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.lognorm.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.lognorm.ppf",
      "notes": "Log-normal PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.lognorm.ppf",
      "slug": "stats-lognorm-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/norm/cdf",
      "category": "counted_custom",
      "cost_formula": "20n",
      "cost_formula_latex": "$20n$",
      "detail_href": "/docs/api/stats/norm/cdf/",
      "detail_json_href": "/api-data/ops/stats-norm-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.norm.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.norm.cdf",
      "notes": "Normal CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.norm.cdf",
      "slug": "stats-norm-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/norm/pdf",
      "category": "counted_custom",
      "cost_formula": "10n",
      "cost_formula_latex": "$10n$",
      "detail_href": "/docs/api/stats/norm/pdf/",
      "detail_json_href": "/api-data/ops/stats-norm-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.norm.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.norm.pdf",
      "notes": "Normal PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.norm.pdf",
      "slug": "stats-norm-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/norm/ppf",
      "category": "counted_custom",
      "cost_formula": "40n",
      "cost_formula_latex": "$40n$",
      "detail_href": "/docs/api/stats/norm/ppf/",
      "detail_json_href": "/api-data/ops/stats-norm-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.norm.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.norm.ppf",
      "notes": "Normal PPF (inverse CDF); cost = numel(input).",
      "numpy_ref": "scipy.stats.norm.ppf",
      "slug": "stats-norm-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/truncnorm/cdf",
      "category": "counted_custom",
      "cost_formula": "30n",
      "cost_formula_latex": "$30n$",
      "detail_href": "/docs/api/stats/truncnorm/cdf/",
      "detail_json_href": "/api-data/ops/stats-truncnorm-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.truncnorm.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.truncnorm.cdf",
      "notes": "Truncated normal CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.truncnorm.cdf",
      "slug": "stats-truncnorm-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/truncnorm/pdf",
      "category": "counted_custom",
      "cost_formula": "30n",
      "cost_formula_latex": "$30n$",
      "detail_href": "/docs/api/stats/truncnorm/pdf/",
      "detail_json_href": "/api-data/ops/stats-truncnorm-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.truncnorm.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.truncnorm.pdf",
      "notes": "Truncated normal PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.truncnorm.pdf",
      "slug": "stats-truncnorm-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/truncnorm/ppf",
      "category": "counted_custom",
      "cost_formula": "50n",
      "cost_formula_latex": "$50n$",
      "detail_href": "/docs/api/stats/truncnorm/ppf/",
      "detail_json_href": "/api-data/ops/stats-truncnorm-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.truncnorm.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.truncnorm.ppf",
      "notes": "Truncated normal PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.truncnorm.ppf",
      "slug": "stats-truncnorm-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 16.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/uniform/cdf",
      "category": "counted_custom",
      "cost_formula": "3n",
      "cost_formula_latex": "$3n$",
      "detail_href": "/docs/api/stats/uniform/cdf/",
      "detail_json_href": "/api-data/ops/stats-uniform-cdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.uniform.cdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.uniform.cdf",
      "notes": "Uniform CDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.uniform.cdf",
      "slug": "stats-uniform-cdf",
      "status": "supported",
      "summary": "Evaluate the cumulative distribution function.",
      "weight": 1.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/uniform/pdf",
      "category": "counted_custom",
      "cost_formula": "3n",
      "cost_formula_latex": "$3n$",
      "detail_href": "/docs/api/stats/uniform/pdf/",
      "detail_json_href": "/api-data/ops/stats-uniform-pdf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.uniform.pdf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.uniform.pdf",
      "notes": "Uniform PDF; cost = numel(input).",
      "numpy_ref": "scipy.stats.uniform.pdf",
      "slug": "stats-uniform-pdf",
      "status": "supported",
      "summary": "Evaluate the probability density function.",
      "weight": 1.0
    },
    {
      "area": "stats",
      "blocked": false,
      "canonical_path": "stats/uniform/ppf",
      "category": "counted_custom",
      "cost_formula": "3n",
      "cost_formula_latex": "$3n$",
      "detail_href": "/docs/api/stats/uniform/ppf/",
      "detail_json_href": "/api-data/ops/stats-uniform-ppf.json",
      "display_type": "custom",
      "flopscope_ref": "flops.stats.uniform.ppf",
      "free": false,
      "module": "flopscope.stats",
      "name": "stats.uniform.ppf",
      "notes": "Uniform PPF; cost = numel(input).",
      "numpy_ref": "scipy.stats.uniform.ppf",
      "slug": "stats-uniform-ppf",
      "status": "supported",
      "summary": "Evaluate the percent-point function.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/std",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/std/",
      "detail_json_href": "/api-data/ops/std.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.std",
      "free": false,
      "module": "numpy",
      "name": "std",
      "notes": "Standard deviation; cost_multiplier=2 (two passes).",
      "numpy_ref": "np.std",
      "slug": "std",
      "status": "supported",
      "summary": "Compute the standard deviation along the specified axis.",
      "weight": 2.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/subtract",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/subtract/",
      "detail_json_href": "/api-data/ops/subtract.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.subtract",
      "free": false,
      "module": "numpy",
      "name": "subtract",
      "notes": "Element-wise subtraction.",
      "numpy_ref": "np.subtract",
      "slug": "subtract",
      "status": "supported",
      "summary": "Subtract arguments, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/sum",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/sum/",
      "detail_json_href": "/api-data/ops/sum.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.sum",
      "free": false,
      "module": "numpy",
      "name": "sum",
      "notes": "Sum of array elements.",
      "numpy_ref": "np.sum",
      "slug": "sum",
      "status": "supported",
      "summary": "Sum of array elements over a given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/swapaxes",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/swapaxes/",
      "detail_json_href": "/api-data/ops/swapaxes.json",
      "display_type": "free",
      "flopscope_ref": "fnp.swapaxes",
      "free": true,
      "module": "numpy",
      "name": "swapaxes",
      "notes": "Interchange two axes of an array.",
      "numpy_ref": "np.swapaxes",
      "slug": "swapaxes",
      "status": "supported",
      "summary": "Interchange two axes of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/take",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/take/",
      "detail_json_href": "/api-data/ops/take.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.take",
      "free": false,
      "module": "numpy",
      "name": "take",
      "notes": "Take elements from array along axis. Cost: numel(output).",
      "numpy_ref": "np.take",
      "slug": "take",
      "status": "supported",
      "summary": "Take elements from an array along an axis.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/take-along-axis",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/take-along-axis/",
      "detail_json_href": "/api-data/ops/take_along_axis.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.take_along_axis",
      "free": false,
      "module": "numpy",
      "name": "take_along_axis",
      "notes": "Take values from input array by matching 1-D index. Cost: numel(output).",
      "numpy_ref": "np.take_along_axis",
      "slug": "take_along_axis",
      "status": "supported",
      "summary": "Take values from the input array by matching 1d index and data slices.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tan",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/tan/",
      "detail_json_href": "/api-data/ops/tan.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.tan",
      "free": false,
      "module": "numpy",
      "name": "tan",
      "notes": "Element-wise tangent.",
      "numpy_ref": "np.tan",
      "slug": "tan",
      "status": "supported",
      "summary": "Compute tangent element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tanh",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/tanh/",
      "detail_json_href": "/api-data/ops/tanh.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.tanh",
      "free": false,
      "module": "numpy",
      "name": "tanh",
      "notes": "Element-wise hyperbolic tangent.",
      "numpy_ref": "np.tanh",
      "slug": "tanh",
      "status": "supported",
      "summary": "Compute hyperbolic tangent element-wise.",
      "weight": 16.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tensordot",
      "category": "counted_custom",
      "cost_formula": "product of contracted dims * output size",
      "cost_formula_latex": "$\\prod_i d_i$",
      "detail_href": "/docs/api/numpy/tensordot/",
      "detail_json_href": "/api-data/ops/tensordot.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.tensordot",
      "free": false,
      "module": "numpy",
      "name": "tensordot",
      "notes": "Tensor dot product along specified axes.",
      "numpy_ref": "np.tensordot",
      "slug": "tensordot",
      "status": "supported",
      "summary": "Compute tensor dot product along specified axes.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tile",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/tile/",
      "detail_json_href": "/api-data/ops/tile.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.tile",
      "free": false,
      "module": "numpy",
      "name": "tile",
      "notes": "Repeat array by tiling. Cost: numel(output).",
      "numpy_ref": "np.tile",
      "slug": "tile",
      "status": "supported",
      "summary": "Construct an array by repeating A the number of times given by reps.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/trace",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/trace/",
      "detail_json_href": "/api-data/ops/trace.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.trace",
      "free": false,
      "module": "numpy",
      "name": "trace",
      "notes": "Diagonal sum; cost = min(n,m).",
      "numpy_ref": "np.trace",
      "slug": "trace",
      "status": "supported",
      "summary": "Return the sum along diagonals of the array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/transpose",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/transpose/",
      "detail_json_href": "/api-data/ops/transpose.json",
      "display_type": "free",
      "flopscope_ref": "fnp.transpose",
      "free": true,
      "module": "numpy",
      "name": "transpose",
      "notes": "Permute array dimensions.",
      "numpy_ref": "np.transpose",
      "slug": "transpose",
      "status": "supported",
      "summary": "Returns an array with axes transposed.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/trapezoid",
      "category": "counted_custom",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/trapezoid/",
      "detail_json_href": "/api-data/ops/trapezoid.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.trapezoid",
      "free": false,
      "module": "numpy",
      "name": "trapezoid",
      "notes": "Integrate using the trapezoidal rule.",
      "numpy_ref": "np.trapezoid",
      "slug": "trapezoid",
      "status": "supported",
      "summary": "Integrate along the given axis using the composite trapezoidal rule.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tri",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/tri/",
      "detail_json_href": "/api-data/ops/tri.json",
      "display_type": "free",
      "flopscope_ref": "fnp.tri",
      "free": true,
      "module": "numpy",
      "name": "tri",
      "notes": "Array with ones at and below given diagonal.",
      "numpy_ref": "np.tri",
      "slug": "tri",
      "status": "supported",
      "summary": "An array with ones at and below the given diagonal and zeros elsewhere.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tril",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/tril/",
      "detail_json_href": "/api-data/ops/tril.json",
      "display_type": "free",
      "flopscope_ref": "fnp.tril",
      "free": true,
      "module": "numpy",
      "name": "tril",
      "notes": "Lower triangle of array.",
      "numpy_ref": "np.tril",
      "slug": "tril",
      "status": "supported",
      "summary": "Lower triangle of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tril-indices",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/tril-indices/",
      "detail_json_href": "/api-data/ops/tril_indices.json",
      "display_type": "free",
      "flopscope_ref": "fnp.tril_indices",
      "free": true,
      "module": "numpy",
      "name": "tril_indices",
      "notes": "Return lower-triangle indices for n x n array.",
      "numpy_ref": "np.tril_indices",
      "slug": "tril_indices",
      "status": "supported",
      "summary": "Return the indices for the lower-triangle of an (n, m) array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/tril-indices-from",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/tril-indices-from/",
      "detail_json_href": "/api-data/ops/tril_indices_from.json",
      "display_type": "free",
      "flopscope_ref": "fnp.tril_indices_from",
      "free": true,
      "module": "numpy",
      "name": "tril_indices_from",
      "notes": "Return lower-triangle indices for given array.",
      "numpy_ref": "np.tril_indices_from",
      "slug": "tril_indices_from",
      "status": "supported",
      "summary": "Return the indices for the lower-triangle of arr.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/trim-zeros",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/trim-zeros/",
      "detail_json_href": "/api-data/ops/trim_zeros.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.trim_zeros",
      "free": false,
      "module": "numpy",
      "name": "trim_zeros",
      "notes": "Trim leading/trailing zeros from 1-D array. Cost: num trimmed.",
      "numpy_ref": "np.trim_zeros",
      "slug": "trim_zeros",
      "status": "supported",
      "summary": "Remove values along a dimension which are zero along all other.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/triu",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/triu/",
      "detail_json_href": "/api-data/ops/triu.json",
      "display_type": "free",
      "flopscope_ref": "fnp.triu",
      "free": true,
      "module": "numpy",
      "name": "triu",
      "notes": "Upper triangle of array.",
      "numpy_ref": "np.triu",
      "slug": "triu",
      "status": "supported",
      "summary": "Upper triangle of an array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/triu-indices",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/triu-indices/",
      "detail_json_href": "/api-data/ops/triu_indices.json",
      "display_type": "free",
      "flopscope_ref": "fnp.triu_indices",
      "free": true,
      "module": "numpy",
      "name": "triu_indices",
      "notes": "Return upper-triangle indices for n x n array.",
      "numpy_ref": "np.triu_indices",
      "slug": "triu_indices",
      "status": "supported",
      "summary": "Return the indices for the upper-triangle of an (n, m) array.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/triu-indices-from",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/triu-indices-from/",
      "detail_json_href": "/api-data/ops/triu_indices_from.json",
      "display_type": "free",
      "flopscope_ref": "fnp.triu_indices_from",
      "free": true,
      "module": "numpy",
      "name": "triu_indices_from",
      "notes": "Return upper-triangle indices for given array.",
      "numpy_ref": "np.triu_indices_from",
      "slug": "triu_indices_from",
      "status": "supported",
      "summary": "Return the indices for the upper-triangle of arr.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/true-divide",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/true-divide/",
      "detail_json_href": "/api-data/ops/true_divide.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.true_divide",
      "free": false,
      "module": "numpy",
      "name": "true_divide",
      "notes": "Element-wise true division (explicit).",
      "numpy_ref": "np.true_divide",
      "slug": "true_divide",
      "status": "supported",
      "summary": "Divide arguments element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/trunc",
      "category": "counted_unary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/trunc/",
      "detail_json_href": "/api-data/ops/trunc.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.trunc",
      "free": false,
      "module": "numpy",
      "name": "trunc",
      "notes": "Truncate toward zero element-wise.",
      "numpy_ref": "np.trunc",
      "slug": "trunc",
      "status": "supported",
      "summary": "Return the truncated value of the input, element-wise.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/typename",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/typename/",
      "detail_json_href": "/api-data/ops/typename.json",
      "display_type": "free",
      "flopscope_ref": "fnp.typename",
      "free": true,
      "module": "numpy",
      "name": "typename",
      "notes": "Return description of given data type code.",
      "numpy_ref": "np.typename",
      "slug": "typename",
      "status": "supported",
      "summary": "Return a description for the given data type code.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/union1d",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/union1d/",
      "detail_json_href": "/api-data/ops/union1d.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.union1d",
      "free": false,
      "module": "numpy",
      "name": "union1d",
      "notes": "Set union; cost = (n+m)*ceil(log2(n+m)).",
      "numpy_ref": "np.union1d",
      "slug": "union1d",
      "status": "supported",
      "summary": "Find the union of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unique",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unique/",
      "detail_json_href": "/api-data/ops/unique.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unique",
      "free": false,
      "module": "numpy",
      "name": "unique",
      "notes": "Sort-based unique; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.unique",
      "slug": "unique",
      "status": "supported",
      "summary": "Find the unique elements of an array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unique-all",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unique-all/",
      "detail_json_href": "/api-data/ops/unique_all.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unique_all",
      "free": false,
      "module": "numpy",
      "name": "unique_all",
      "notes": "Sort-based unique; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.unique_all",
      "slug": "unique_all",
      "status": "supported",
      "summary": "Find the unique elements of an array, and counts, inverse, and indices.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unique-counts",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unique-counts/",
      "detail_json_href": "/api-data/ops/unique_counts.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unique_counts",
      "free": false,
      "module": "numpy",
      "name": "unique_counts",
      "notes": "Sort-based unique; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.unique_counts",
      "slug": "unique_counts",
      "status": "supported",
      "summary": "Find the unique elements and counts of an input array `x`.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unique-inverse",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unique-inverse/",
      "detail_json_href": "/api-data/ops/unique_inverse.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unique_inverse",
      "free": false,
      "module": "numpy",
      "name": "unique_inverse",
      "notes": "Sort-based unique; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.unique_inverse",
      "slug": "unique_inverse",
      "status": "supported",
      "summary": "Find the unique elements of `x` and indices to reconstruct `x`.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unique-values",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unique-values/",
      "detail_json_href": "/api-data/ops/unique_values.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unique_values",
      "free": false,
      "module": "numpy",
      "name": "unique_values",
      "notes": "Sort-based unique; cost = n*ceil(log2(n)).",
      "numpy_ref": "np.unique_values",
      "slug": "unique_values",
      "status": "supported",
      "summary": "Returns the unique elements of an input array `x`.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unpackbits",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unpackbits/",
      "detail_json_href": "/api-data/ops/unpackbits.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unpackbits",
      "free": false,
      "module": "numpy",
      "name": "unpackbits",
      "notes": "Unpack elements of array into bits. Cost: numel(input).",
      "numpy_ref": "np.unpackbits",
      "slug": "unpackbits",
      "status": "supported",
      "summary": "Unpacks elements of a uint8 array into a binary-valued output array.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unravel-index",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/unravel-index/",
      "detail_json_href": "/api-data/ops/unravel_index.json",
      "display_type": "free",
      "flopscope_ref": "fnp.unravel_index",
      "free": true,
      "module": "numpy",
      "name": "unravel_index",
      "notes": "Convert flat index to multi-dimensional index.",
      "numpy_ref": "np.unravel_index",
      "slug": "unravel_index",
      "status": "supported",
      "summary": "Converts a flat index or array of flat indices into a tuple of coordinate arrays.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unstack",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/unstack/",
      "detail_json_href": "/api-data/ops/unstack.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unstack",
      "free": false,
      "module": "numpy",
      "name": "unstack",
      "notes": "Unstack array along axis into tuple of arrays (NumPy 2.x). Cost: numel(output).",
      "numpy_ref": "np.unstack",
      "slug": "unstack",
      "status": "supported",
      "summary": "Split an array into a sequence of arrays along the given axis.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/unwrap",
      "category": "counted_custom",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/unwrap/",
      "detail_json_href": "/api-data/ops/unwrap.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.unwrap",
      "free": false,
      "module": "flopscope._unwrap",
      "name": "unwrap",
      "notes": "Phase unwrap. Cost: $\\text{numel}(\\text{input})$ (diff + conditional adjustment).",
      "numpy_ref": "np.unwrap",
      "slug": "unwrap",
      "status": "supported",
      "summary": "Unwrap by taking the complement of large deltas with respect to the period.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/vander",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/vander/",
      "detail_json_href": "/api-data/ops/vander.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.vander",
      "free": false,
      "module": "numpy",
      "name": "vander",
      "notes": "Vandermonde matrix; cost = len(x)*(N-1).",
      "numpy_ref": "np.vander",
      "slug": "vander",
      "status": "supported",
      "summary": "Generate a Vandermonde matrix.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/var",
      "category": "counted_reduction",
      "cost_formula": "numel(input)",
      "cost_formula_latex": "$\\text{numel}(\\text{input})$",
      "detail_href": "/docs/api/numpy/var/",
      "detail_json_href": "/api-data/ops/var.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.var",
      "free": false,
      "module": "numpy",
      "name": "var",
      "notes": "Variance; cost_multiplier=2 (two passes).",
      "numpy_ref": "np.var",
      "slug": "var",
      "status": "supported",
      "summary": "Compute the variance along the specified axis.",
      "weight": 2.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/vdot",
      "category": "counted_custom",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/vdot/",
      "detail_json_href": "/api-data/ops/vdot.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.vdot",
      "free": false,
      "module": "numpy",
      "name": "vdot",
      "notes": "Dot product with conjugation; cost = N (FMA=1).",
      "numpy_ref": "np.vdot",
      "slug": "vdot",
      "status": "supported",
      "summary": "Return the dot product of two vectors.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/vecdot",
      "category": "counted_binary",
      "cost_formula": "n",
      "cost_formula_latex": "$n$",
      "detail_href": "/docs/api/numpy/vecdot/",
      "detail_json_href": "/api-data/ops/vecdot.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.vecdot",
      "free": false,
      "module": "numpy",
      "name": "vecdot",
      "notes": "Vector dot product along last axis.",
      "numpy_ref": "np.vecdot",
      "slug": "vecdot",
      "status": "supported",
      "summary": "Vector dot product of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/vecmat",
      "category": "counted_binary",
      "cost_formula": "numel(output)",
      "cost_formula_latex": "$\\text{numel}(\\text{output})$",
      "detail_href": "/docs/api/numpy/vecmat/",
      "detail_json_href": "/api-data/ops/vecmat.json",
      "display_type": "counted",
      "flopscope_ref": "fnp.vecmat",
      "free": false,
      "module": "numpy",
      "name": "vecmat",
      "notes": "Vector-matrix product. Cost = output_size * contracted_axis.",
      "numpy_ref": "np.vecmat",
      "slug": "vecmat",
      "status": "supported",
      "summary": "Vector-matrix dot product of two arrays.",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/vsplit",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/vsplit/",
      "detail_json_href": "/api-data/ops/vsplit.json",
      "display_type": "free",
      "flopscope_ref": "fnp.vsplit",
      "free": true,
      "module": "numpy",
      "name": "vsplit",
      "notes": "Split array into rows. Cost: numel(output).",
      "numpy_ref": "np.vsplit",
      "slug": "vsplit",
      "status": "supported",
      "summary": "Split an array into multiple sub-arrays vertically (row-wise).",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/vstack",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/vstack/",
      "detail_json_href": "/api-data/ops/vstack.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.vstack",
      "free": false,
      "module": "numpy",
      "name": "vstack",
      "notes": "Stack arrays vertically. Cost: numel(output).",
      "numpy_ref": "np.vstack",
      "slug": "vstack",
      "status": "supported",
      "summary": "Stack arrays in sequence vertically (row wise).",
      "weight": 1.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/where",
      "category": "counted_custom",
      "cost_formula": "per-operation",
      "cost_formula_latex": "varies",
      "detail_href": "/docs/api/numpy/where/",
      "detail_json_href": "/api-data/ops/where.json",
      "display_type": "custom",
      "flopscope_ref": "fnp.where",
      "free": false,
      "module": "numpy",
      "name": "where",
      "notes": "Select elements based on condition. Cost: numel(input).",
      "numpy_ref": "np.where",
      "slug": "where",
      "status": "supported",
      "summary": "Return elements chosen from `x` or `y` depending on `condition`.",
      "weight": 4.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/zeros",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/zeros/",
      "detail_json_href": "/api-data/ops/zeros.json",
      "display_type": "free",
      "flopscope_ref": "fnp.zeros",
      "free": true,
      "module": "numpy",
      "name": "zeros",
      "notes": "Create zero-filled array.",
      "numpy_ref": "np.zeros",
      "slug": "zeros",
      "status": "supported",
      "summary": "Return a new array of given shape and type, filled with zeros.",
      "weight": 0.0
    },
    {
      "area": "core",
      "blocked": false,
      "canonical_path": "numpy/zeros-like",
      "category": "free",
      "cost_formula": "0",
      "cost_formula_latex": "$0$",
      "detail_href": "/docs/api/numpy/zeros-like/",
      "detail_json_href": "/api-data/ops/zeros_like.json",
      "display_type": "free",
      "flopscope_ref": "fnp.zeros_like",
      "free": true,
      "module": "numpy",
      "name": "zeros_like",
      "notes": "Array of zeros with same shape/type as input.",
      "numpy_ref": "np.zeros_like",
      "slug": "zeros_like",
      "status": "supported",
      "summary": "Return an array of zeros with the same shape and type as a given array.",
      "weight": 0.0
    }
  ],
  "total": 545
}
