edit: I just saw this tweet and find it incredibly relevant :)

enter image description here

enter image description here

begin question: See this answer and then consider if there are known or likely solar system bodies that might be identified as both asteroids and comets.

If so (there seems to be an example there) would this be because there is insufficient information known about the body, and the ambiguity could be cleared up with enough data (say a visit by a spacecraft)? Or are the categories of asteroids and comets actually overlapping?

If the latter, is there work underway to improve or update these definitions?

  • $\begingroup$ Possible duplicate of What is the difference between asteroids, comets and meteors? $\endgroup$ Commented Feb 7, 2017 at 12:03
  • 1
    $\begingroup$ @StephenG no, I have absolutely not asked "What is the difference between asteroids, comets and meteors?" I am asking if that difference is recently being called into question, and if the definitions may need to be changed in the future. Not possibly a duplicate at all, no. $\endgroup$
    – uhoh
    Commented Feb 7, 2017 at 12:47
  • $\begingroup$ @uhoh: While I agree in this case that this question is not a duplicate of the one mentioned above, note that it depends on the answers whether two questions are duplicates, not on the questions themselves. So your argument (“I have asked something else”) is beside the point (which should be “the answers to the other question don’t contain the answer to my question”). $\endgroup$
    – chirlu
    Commented Feb 8, 2017 at 3:55
  • 1
    $\begingroup$ @CamilleGoudeseune I finally checked out your user profile, it's your score in The Optiverse! Everting a sphere is on my bucket list. Is the intermediate point of a 3-sphere eversion a “double” Boy's surface? $\endgroup$
    – uhoh
    Commented Dec 9, 2020 at 5:09
  • 1
    $\begingroup$ This is why I chose my avatar. pics.me.me/… Not the question asked, but at least meteors are well defined and distinct. $\endgroup$
    – userLTK
    Commented Dec 9, 2020 at 10:32

2 Answers 2


If we're going to get technical, Asteroids are not really an official name anymore. In 2006, when the IAU redefined what a planet was (and thus demoted Pluto), they also decided to more formally define other terms to identify objects in our solar system. You can see a diagram of all the official terms and how they relate below. Notice the important factor that asteroids no longer made the cut. There is the collection of "Small Solar System Bodies" (SSSB) and within that falls comets and centaurs, but asteroids are not exclusively called out.

enter image description here

So if you want to get technical, asteroids are really SSSBs now and comets are SSSBs as well, but also happen to fit into the sub-category of comets. What defines an SSSB as a comet is its ability to form a coma based on the sublimation of icy surface volatiles. So you might distinguish an "asteroid" as an object which cannot form a coma (and orbits inside Neptune), but that still leads to an ambiguity because what happens when a comet runs out of surface volatiles? Does it now become an asteroid? Is it still considered a comet? There are no clear answers.

  • 1
    $\begingroup$ Just as an aside, I agree with @uhoh: I tend to prefer diagrams where there aren't multiple boundaries that track each other for stretches like this one does; I can't easily tell at a glance which boundary goes where. This isn't meant to cast any aspersions on the answer, which is fine! $\endgroup$
    – Brian Tung
    Commented Feb 8, 2017 at 3:09
  • 2
    $\begingroup$ @zephyr -- This is supposed to be an Euler diagram. That's not how they work. Minor planets are the superset rather than dwarf planets -- and they also encompass the non-cometary "small solar system bodies".The diagram does not depict that, so it is very wrong (but that's wikipedia for you). $\endgroup$ Commented Feb 9, 2017 at 16:47
  • 1
    $\begingroup$ @zephyr the difficulty here is that it is claimed somewhere within WIkipedia that this is an Euler diagram. "An Euler diagram (/ˈɔɪlər/, oy-lər) is a diagrammatic means of representing sets and their relationships. Sets like in math class with union and intersection and proofs. So there are strict rules about what does or doesn't means what. David is just saying in words what this diagram says mathematically. $\endgroup$
    – uhoh
    Commented Feb 9, 2017 at 17:00
  • 1
    $\begingroup$ @uhoh -- Thank you. That is exactly what I mean. $\endgroup$ Commented Feb 9, 2017 at 17:01
  • 1
    $\begingroup$ @DavidHammen I think I see the confusion. I'm interpretting the fact that the minor planet box spans both dwarf planets and SSSBs to mean it is the super-set (and that they diagram is just poorly created). I think we can all just agree that this diagram is bad and confusing. $\endgroup$
    – zephyr
    Commented Feb 9, 2017 at 17:17

This is supplemental information to further clarify the answer. The drawing is confusing to me an likely to others. I've written a color filter in Python to help isolate only four of the boundaries.

enter image description here

import numpy as np
import matplotlib.pyplot as plt

colorz = dict()

colorz['red']    = 1.0,   0.0,   0.0
colorz['green']  = 0.0,   0.502, 0.0
colorz['blue']   = 0.0,   0.0,   1.0
colorz['purple'] = 0.435, 0.192, 0.596
colorz['brown']  = 0.612, 0.353, 0.235
colorz['pink']   = 1.0,   0.0,   1.0
colorz['gray']   = 0.471, 0.471, 0.471
colorz['orange'] = 1.0,   0.494, 0.0
colorz['yellow'] = 1.0,   0.8,   0.0

namez = dict()

namez['red']    = "Satellites (natural)"
namez['green']  = "Dwarf planets"
namez['blue']   = "Planets"
namez['purple'] = "Minor planets"
namez['brown']  = "Trans-Neptunian Objects"
namez['pink']   = "Planetoiods"
namez['gray']   = "Small Solar System bodies"
namez['orange'] = "Comets"
namez['yellow'] = "Centaurs"

fname = "Euler_diagram_of_solar_system_bodies.svg.png"

img = plt.imread(fname)

def fakeimg(img, colors, hw):

    img3 = img[..., :3]

    imgnew = np.ones_like(img3)

    for color in colors:

        col = np.array(color)[:3]

        mask = (np.abs(img3-col) < hw).all(axis=-1)

        imgnew[mask] = col

    return imgnew

cs = [colorz[c] for c in ['orange', 'green', 'purple', 'gray']]

imnew = fakeimg(img, cs, 0.01)

if 1 == 1:

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .