1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
|
#!/usr/bin/env -S sh -c '( printf "%s\n" "digraph SomeGraph {"; cat $0; printf "}" ) | dot -v -Tx11 # ikiwiki graphviz.pm sucks'
// connections would optimally be labelled with legitimate correlations
// which would involve something like
// 1) get https://fdc.nal.usda.gov/fdc-datasets/FoodData_Central_foundation_food_json_2025-04-24.zip
// 2) remove broadly inedible "foods" (e.g. dry grains, uncooked meats)
// 3) remove new world foods (e.g. nightshades, sweet potato)
// 4) remove neolithic foods (e.g. grains, legumes, dairy, branded foods)
// 5) group related foods
// 6) group related nutrients
// 7) remove non-essential nutrients besides glutamate while retaining stuff that should
// probably be considered essential, like DHA/EPA/AA, menatetrenone, and collagen
// 8) remove linoleic acid, alpha-linolenic acid, carotinoids, and vitamin D
// 9) run correlations between glutamate and every other nutrient
// 10) remove negative correlations
//digraph Nutrients {
rankdir=LR
newrank=true
node [shape=box, style=filled, fillcolor=white]
subgraph cluster_input_distribution {
label="Training Input Distribution: Selection Effects"
subgraph cluster_receptors {
label="Regulatory\nsensing"
style=filled
fillcolor=lightcoral
node [shape=circle]
T1R1
T1R3
mGluR1
mGluR4
}
"L-Glutamate"
"Cooked\nanimal\ntissues"
subgraph cluster_elements {
label="Essential\nElements"
style=filled
fillcolor=lightgrey
Iron
Zinc // Selective aversion handled by T2R7, T2R14, TRPML1 and/or TRPML3
Iodine
Sulfur
Copper
// Sodium // More directly handled by ENaC
Calcium
// Chlorine // More directly handled by ENaC
Selenium
Potassium
// Chromium // Probably useless
Manganese
Magnesium
Phosphorus
Molybdenum
}
subgraph cluster_amino_acids {
label="Essential\nAmino Acids"
style=filled
fillcolor=tan
Valine
Lysine
Leucine
Histidine
Threonine
Isoleucine
Methionine
Tryptophan
Phenylalanine
}
subgraph cluster_vitamins {
label="Essential\nVitamins"
style=filled
fillcolor=lightblue
"Pantothenic\nAcid"
Pyridoxine
Cobalamin
Riboflavin
Thiamine
Niacin
Biotin
// Presumably anticorrelated
// Folate
// "Vitamin C"
// Phylloquinone
// Essential, but not really nutritional
// "Vitamin D"
// Would be handled in combination with CD36 or the FFARs
// "Retinoic Acid"
// Tocopherols
// Tocotrienols
// Menatetrenone
}
// Better handled by GPR120/FFAR4?
//subgraph cluster_fatty_acids {
// label="Essential\nFatty Acids"
// style=filled
// fillcolor=lightyellow
// "Arachidonic Acid"
// "Eicosapentaenoic Acid"
// "Docosahexaenoic Acid"
//}
// Receptors
{
T1R1
T1R3
mGluR1
mGluR4
} -> "L-Glutamate" -> "Cooked\nanimal\ntissues"
// Connect Glutamate to all fatty acids
// Better handled by GPR120/FFAR4?
//Glutamate -> {
// "Arachidonic Acid"
// "Eicosapentaenoic Acid"
// "Docosahexaenoic Acid"
// } [minlen=1]
"Cooked\nanimal\ntissues" -> {
// Connect Glutamate to all amino acids
Histidine
Isoleucine
Leucine
Lysine
Methionine
Phenylalanine
Threonine
Tryptophan
Valine
} [minlen=2]
// Connect Glutamate to all vitamins
"Cooked\nanimal\ntissues" -> {
Thiamine
Riboflavin
Niacin
"Pantothenic\nAcid"
Pyridoxine
Biotin
// Presumably anticorrelated
// Folate
// "Vitamin C"
// Phylloquinone
Cobalamin
// Essential, but not really nutritional
// "Vitamin D"
// Would be handled in combination with CD36 or the FFARs
// "Retinoic Acid"
// Tocopherols
// Tocotrienols
// Menatetrenone
} [minlen=1]
// Connect Glutamate to all elements
"Cooked\nanimal\ntissues" -> {
Calcium
Phosphorus
Potassium
Sulfur // Maybe Cysteine is more sensible
// Sodium // More directly handled by ENaC
// Chlorine // More directly handled by ENaC
Magnesium
Iron
Zinc // Selective aversion handled by T2R7, T2R14, TRPML1 and/or TRPML3
Manganese
Copper
Iodine
// maybe find a paradigm to exclude supraphysiologic foods like brazil nuts? e.g. when serving size exceeds Institute of Medicine's Dietary Reference Intake max values by a factor of ten or something
Selenium
Molybdenum
// Chromium // Probably useless
} [minlen=3]
}
//}
|