Is this the correct definition of a local trivialization? I have seen several people defining the notion of "local trivialization" differently. So I'd like to know if I understood the definition correctly. The following is what I think is the correct definition:

Definition: Let $(M,\tau _M)$ be a topological space. Suppose that $E$ is a set and $\pi :E\to M$ is surjective map. We say that $(U,\varphi )$ is a local trivialization of $\pi$ with rank $r$ if the following propositions are true:

*

*$U\in \tau_M$

*$\varphi :\pi ^{-1}[U]\to U\times \mathbb{R}^r$ is a homeomorphism with respect to the topology $\{\pi^{-1}[O]\cap \pi ^{-1}[U]:O\in\tau_M\}$ in $\pi ^{-1}[U] $ and the product topology of $\tau _M$ with the standard topology of $\mathbb{R}^r$;

*$\pi =\pi _1\circ \varphi $ in which $\pi _1:U\times \mathbb{R}^r\to U$ is given by $\pi _1(x,y):=x$;

*For all $q\in U$ we have that $E_q:=\pi ^{-1}[\{q\}]$ is $\mathbb{R}$-vector space and $\varphi _q:E_q\to \mathbb{R}^r$ defined by $\varphi _q(x):=\pi _2\circ \varphi (x)$ is an isomorphism of vector spaces in which $\pi _2:U\times \mathbb{R}^r\to \mathbb{R}^r$ is given by $\pi _2(x,y):=y$

My question is: Is the above definition correct? If it's wrong, could you please tell me the correct definition?
Thank you for your attention!
 A: The definition I know goes as follows:
Work in a fixed category: the category of topological spaces, the category of topological manifolds or the category of smooth manifolds.
Definition. If $B$ is a space, then a bundle over $B$ is a morphism $\pi:E\to B$.
Definition. Let $\pi:E\to B$, $\pi':E'\to B$ be two bundles over $B$. A pair of morphisms $f:E\to E'$ and $g:E'\to E$ is an isomorphism of the bundles $\pi$ and $\pi'$ if $\pi'f=\pi$, $\pi g=\pi'$, $fg=\mathrm{id}_{E'}$ and $gf=\mathrm{id}_{E}$.
Definition. Let $\pi:E\to B$ be a bundle and $A\subseteq B$ be a subspace. We define the bundle $\pi':E'\to A$, where $E'=\pi^{-1}[A]$ and $\pi'$ is the restriction of $\pi$. This bundle is called the restriction of $\pi:E\to B$ to $A$ and I will denote it by $\pi|A$ here.
If you want to define a locally trivial bundle, it may be easier to do it like this, instead of defining a local trivialisation.
Definition. Two bundles $\pi:E\to B$, $\pi':E'\to B$ over $B$ are locally isomorphic if there is an open cover $\mathcal U$ of $B$ such that $\pi|U$ is isomorphic to $\pi'|U$ for every open $U\in\mathcal U$.
Definition. The bundle $\pi:E\to B$ is called locally trivial with fibre $F$ if it is locally isomorphic to the trivial bundle $p_1:B\times F\to B$.
All of this is from chapter 2 of Husemoller's book Fibre bundles (Springer's Graduate texts in mathematics, 20).
However, if you really want to define what a local trivialisation is, then you could do it like this:
Definition. Given an open $U\subseteq B$, a local trivialisation on $U$ with fibre $F$ of the bundle $\pi:E\to B$ is an isomorphism of the restriction $\pi|U$ and the trivial bundle $p_1:U\times F\to U$.
