  Mobile edge computing seeks to provide resources to different delay-sensitive
applications. This is a challenging problem as an edge cloud-service provider
may not have sufficient resources to satisfy all resource requests.
Furthermore, allocating available resources optimally to different applications
is also challenging. Resource sharing among different edge cloud-service
providers can address the aforementioned limitation as certain service
providers may have resources available that can be ``rented'' by other service
providers. However, edge cloud service providers can have different objectives
or \emph{utilities}. Therefore, there is a need for an efficient and effective
mechanism to share resources among service providers, while considering the
different objectives of various providers. We model resource sharing as a
multi-objective optimization problem and present a solution framework based on
\emph{Cooperative Game Theory} (CGT). We consider the strategy where each
service provider allocates resources to its native applications first and
shares the remaining resources with applications from other service providers.
We prove that for a monotonic, non-decreasing utility function, the game is
canonical and convex. Hence, the \emph{core} is not empty and the grand
coalition is stable. We propose two algorithms \emph{Game-theoretic Pareto
optimal allocation} (GPOA) and \emph{Polyandrous-Polygamous Matching based
Pareto Optimal Allocation} (PPMPOA) that provide allocations from the core.
Hence the obtained allocations are \emph{Pareto} optimal and the grand
coalition of all the service providers is stable. Experimental results confirm
that our proposed resource sharing framework improves utilities of edge
cloud-service providers and application request satisfaction.
