Clear[coord,metric,inversemetric,christoffel,reimann,ricci,einstein,r,ϕ,θ,t,x,y,z]

n=4

coord={t,r,θ,ϕ}

metric={{-1,0,0,0},{0,a[t]^2,0,0},{0,0,a[t]^2*r^2,0},{0,0,0,a[t]^2*r^2* Sin[θ]^2}}

metric // MatrixForm

inversemetric =Simplify[Inverse[metric]]

inversemetric // MatrixForm

christoffel:= Simplify[ Table[(1/2)*Sum[inversemetric[[s,i]]*( D[metric[[j,s]],coord[[k]] ] + D[metric[[s,k]],coord[[j]] ] - D[metric[[j,k]],coord[[s]] ] ),{s,1,n}],{i,1,n},{j,1,n},{k,1,n} ] ]

listchristoffel:= Table[If[UnsameQ[christoffel[[i,j,k]],0],{ToString[Γ[i-1,j-1,k-1]],christoffel[[i,j,k]]}],{i,1,n},{j,1,n},{k,1,j}]

TableForm[Partition[DeleteCases[Flatten[listchristoffel],Null],2],TableSpacing ->{2,2}]

riemann:=riemann=Simplify[Table[D[ christoffel[[i,j,l]], coord[[k]] ] - D[ christoffel[[i,j,k]], coord[[l]] ] + Sum[christoffel[[s,j,l]]christoffel[[i,k,s]] - christoffel[[s,j,k]]christoffel[[i,l,s]],{s,1,n}],{i,1,n},{j,1,n},{k,1,n},{l,1,n}]]

listriemann:=Table[If[UnsameQ[riemann[[i,j,k,l]],0], {ToString[R[i-1,j-1,k-1,l-1]], riemann[[i,j,k,l]]}],{i,1,n},{j,1,n},{k,1,n},{l,1,k-1}]

TableForm[Partition[DeleteCases[Flatten[listriemann],Null],2],TableSpacing -> {2,2}]

ricci:=ricci=Simplify[Table[Sum[riemann[[i,j,i,l]],{i,1,n}],{j,1,n},{l,1,n}]]

listricci:=Table[If[UnsameQ[ricci[[j,l]],0],{ToString[R[j-1,l-1]],ricci[[j,l]]}],{j,1,n},{l,1,n}]

TableForm[Partition[DeleteCases[Flatten[listricci],Null],2],TableSpacing -> {2,2}]

scalar=Simplify[Sum[inversemetric[[i,j]]ricci[[i,j]],{i,1,n},{j,1,n}]]

einstein:=einstein=Simplify[ricci-(1/2)scalar*metric]

listeinstein:=Table[If[UnsameQ[einstein[[j,l]],0],{ToString[G[j-1,l-1]],einstein[[j,l]]}],{j,1,n},{l,1,j}]

TableForm[Partition[DeleteCases[Flatten[listeinstein],Null],2],TableSpacing -> {2,2}]