Arity_mismatch error for a combination of linear and non-linear problem

I am trying to solve convective diffusive reactive (combustion equations in dolfinx v0.8.0. here is my minimal code

import basix.ufl
import dolfinx.fem
import dolfinx.fem.petsc
import mpi4py.MPI
import numpy.typing
import petsc4py.PETSc
import ufl
import dolfinx.mesh
from mpi4py import MPI
from dolfinx.io import (VTXWriter, gmshio)
import numpy as np
gdim = 2
mesh_comm = MPI.COMM_WORLD
dtype0=np.float64
print("using dolfinx ",dolfinx.__version__," and \n data type",
      [dolfinx.default_scalar_type,petsc4py.PETSc.ScalarType])

#rectangular mesh
mesh=dolfinx.mesh.create_rectangle(mesh_comm, np.array([[0,-15.0],[15,15]]),np.array([65,129]),
                             cell_type=dolfinx.mesh.CellType.quadrilateral,dtype=dtype0)

# Function spaces
Vt_element = basix.ufl.element("Lagrange", mesh.basix_cell(), 1)

W_element = basix.ufl.mixed_element([Vt_element,Vt_element,Vt_element])
W = dolfinx.fem.functionspace(mesh, W_element)

#functions
yg=dolfinx.fem.Function(W,dtype=dtype0)
vg=ufl.TestFunction(W)
yb=ufl.TrialFunction(W)

(yf,yx,yt)=ufl.split(yg)
(yfb,yxb,ytb) = ufl.split(yb)
(vf, vx, vt) = ufl.split(vg)

##paramters
LeF=petsc4py.PETSc.ScalarType(1.6)
LeX=petsc4py.PETSc.ScalarType(1.6)
Da=petsc4py.PETSc.ScalarType(100.0)
beta=petsc4py.PETSc.ScalarType(10.0)
gamma=petsc4py.PETSc.ScalarType(5.0)
phi=petsc4py.PETSc.ScalarType(1.0)
InvLeF=1.0/LeF
InvLeX=1.0/LeX

#governing equations in variational form
w=Da*(beta**3)*yf*yx*ufl.exp(beta*(yt-1)*(1+gamma)/(1+gamma*yt));
F1=[(ufl.inner(yf.dx(0),vf)+InvLeF*ufl.inner(ufl.grad(yf),ufl.grad(vf)))*ufl.dx,
   (ufl.inner(yx.dx(0),vx)+InvLeX*ufl.inner(ufl.grad(yx),ufl.grad(vx)))*ufl.dx,
   (ufl.inner(yt.dx(0),vt)+ufl.inner(ufl.grad(yt),ufl.grad(vt)))*ufl.dx];
F=[(ufl.inner(yf.dx(0),vf)+InvLeF*ufl.inner(ufl.grad(yf),ufl.grad(vf))+w)*ufl.dx,
   (ufl.inner(yx.dx(0),vx)+InvLeX*ufl.inner(ufl.grad(yx),ufl.grad(vx))+w)*ufl.dx,
   (ufl.inner(yt.dx(0),vt)+ufl.inner(ufl.grad(yt),ufl.grad(vt))+w)*ufl.dx];
F2=[w*ufl.dx,phi*w*ufl.dx,(1+phi)*w*ufl.dx];

when I try to take forms for F1 and F2 individually, I have no problem:

[dolfinx.fem.form(F1),dolfinx.fem.form(F2)]

But when I execute

dolfinx.fem.form(F)

then I get Arity_mismatch error:
the full output with error message is

Authorization required, but no authorization protocol specified
Authorization required, but no authorization protocol specified
Authorization required, but no authorization protocol specified
using dolfinx 0.8.0 and
data type [<class ‘numpy.float64’>, <class ‘numpy.float64’>]
Traceback (most recent call last):
File “/home/noume/multiphenicsx/tutorials/tdequations_min.py”, line 62, in
dolfinx.fem.form(F)
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/fem/forms.py”, line 249, in form
return _create_form(form)
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/fem/forms.py”, line 246, in _create_form
return list(map(lambda sub_form: _create_form(sub_form), form))
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/fem/forms.py”, line 246, in
return list(map(lambda sub_form: _create_form(sub_form), form))
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/fem/forms.py”, line 244, in _create_form
return _form(form)
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/fem/forms.py”, line 186, in _form
ufcx_form, module, code = jit.ffcx_jit(
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/jit.py”, line 51, in mpi_jit
return local_jit(*args, **kwargs)
File “/usr/lib/petsc/lib/python3/dist-packages/dolfinx/jit.py”, line 201, in ffcx_jit
r = ffcx.codegeneration.jit.compile_forms([ufl_object], options=p_ffcx, **p_jit)
File “/usr/lib/python3/dist-packages/ffcx/codegeneration/jit.py”, line 256, in compile_forms
impl = _compile_objects(
File “/usr/lib/python3/dist-packages/ffcx/codegeneration/jit.py”, line 383, in _compile_objects
_, code_body = ffcx.compiler.compile_ufl_objects(
File “/usr/lib/python3/dist-packages/ffcx/compiler.py”, line 108, in compile_ufl_objects
analysis = analyze_ufl_objects(ufl_objects, options[“scalar_type”]) # type: ignore
File “/usr/lib/python3/dist-packages/ffcx/analysis.py”, line 94, in analyze_ufl_objects
form_data = tuple(_analyze_form(form, scalar_type) for form in forms)
File “/usr/lib/python3/dist-packages/ffcx/analysis.py”, line 94, in
form_data = tuple(_analyze_form(form, scalar_type) for form in forms)
File “/usr/lib/python3/dist-packages/ffcx/analysis.py”, line 180, in _analyze_form
form_data = ufl.algorithms.compute_form_data(
File “/usr/lib/python3/dist-packages/ufl/algorithms/compute_form_data.py”, line 427, in compute_form_data
check_form_arity(preprocessed_form, self.original_form.arguments(), complex_mode)
File “/usr/lib/python3/dist-packages/ufl/algorithms/check_arities.py”, line 211, in check_form_arity
check_integrand_arity(itg.integrand(), arguments, complex_mode)
File “/usr/lib/python3/dist-packages/ufl/algorithms/check_arities.py”, line 192, in check_integrand_arity
arg_tuples = map_expr_dag(rules, expr, compress=False)
File “/usr/lib/python3/dist-packages/ufl/corealg/map_dag.py”, line 35, in map_expr_dag
(result,) = map_expr_dags(
File “/usr/lib/python3/dist-packages/ufl/corealg/map_dag.py”, line 103, in map_expr_dags
r = handlers[v.ufl_typecode](v, *[vcache[u] for u in v.ufl_operands])
File “/usr/lib/python3/dist-packages/ufl/algorithms/check_arities.py”, line 57, in sum
raise ArityMismatch(
ufl.algorithms.check_arities.ArityMismatch: Adding expressions with non-matching form arguments (‘v_0’,) vs ().

w contains no test function, so,

so

doesn’t make sense to compile, as the first two terms are rank 1 (vectors) while the latter is rank 0 (scalar)

Thanks I got it. I corrected that and it is working perfectly.