text:
Custom Events

Event Names

Unlike components and props, event names don’t provide any automatic case transformation. Instead, the name of an emitted event must exactly match the name used to listen to that event. For example, if emitting a camelCased event name:

this.$emit('myEvent')  Listening to the kebab-cased version will have no effect: <my-component v-on:my-event="doSomething"></my-component>  Unlike components and props, event names will never be used as variable or property names in JavaScript, so there’s no reason to use camelCase or PascalCase. Additionally, v-on event listeners inside DOM templates will be automatically transformed to lowercase (due to HTML’s case-insensitivity), so v-on:myEvent would become v-on:myevent – making myEvent impossible to listen to. For these reasons, we recommend you always use kebab-case for event names. Customizing Component v-model New in 2.2.0+ By default, v-model on a component uses value as the prop and input as the event, but some input types such as checkboxes and radio buttons may want to use the value attribute for a different purpose. Using the model option can avoid a conflict in such cases: Vue.component('base-checkbox', { model: { prop: 'checked', event: 'change' }, props: { checked: Boolean }, template:  <input type="checkbox" v-bind:checked="checked" v-on:change="$emit('change', $event.target.checked)" >  })  Now when using v-model on this component: <base-checkbox v-model="lovingVue"></base-checkbox>  the value of lovingVue will be passed to the checked prop. The lovingVue property will then be updated when <base-checkbox> emits a change event with a new value. Note that you still have to declare the checked prop in component’s props option. Binding Native Events to Components There may be times when you want to listen directly to a native event on the root element of a component. In these cases, you can use the .native modifier for v-on: <base-input v-on:focus.native="onFocus"></base-input>  This can be useful sometimes, but it’s not a good idea when you’re trying to listen on a very specific element, like an <input>. For example, the <base-input> component above might refactor so that the root element is actually a <label> element: <label> {{ label }} <input v-bind="$attrs"
v-bind:value="value"
v-on:input="$emit('input',$event.target.value)"
>
</label>

In that case, the .native listener in the parent would silently break. There would be no errors, but the onFocus handler wouldn’t be called when we expected it to.

To solve this problem, Vue provides a $listeners property containing an object of listeners being used on the component. For example: { focus: function (event) { /* ... */ } input: function (value) { /* ... */ }, }  Using the $listeners property, you can forward all event listeners on the component to a specific child element with v-on="$listeners". For elements like <input>, that you also want to work with v-model, it’s often useful to create a new computed property for listeners, like inputListeners below: Vue.component('base-input', { inheritAttrs: false, props: ['label', 'value'], computed: { inputListeners: function () { var vm = this // Object.assign merges objects together to form a new object return Object.assign({}, // We add all the listeners from the parent this.$listeners,
// Then we can add custom listeners or override the
// behavior of some listeners.
{
// This ensures that the component works with v-model
input: function (event) {
vm.$emit('input', event.target.value) } } ) } }, template:  <label> {{ label }} <input v-bind="$attrs"
v-bind:value="value"
v-on="inputListeners"
>
</label>

})

Now the <base-input> component is a fully transparent wrapper, meaning it can be used exactly like a normal <input> element: all the same attributes and listeners will work, without the .native modifier.

.sync Modifier

New in 2.3.0+

In some cases, we may need “two-way binding” for a prop. Unfortunately, true two-way binding can create maintenance issues, because child components can mutate the parent without the source of that mutation being obvious in both the parent and the child.

That’s why instead, we recommend emitting events in the pattern of update:myPropName. For example, in a hypothetical component with a title prop, we could communicate the intent of assigning a new value with:

this.$emit('update:title', newTitle)  Then the parent can listen to that event and update a local data property, if it wants to. For example: <text-document v-bind:title="doc.title" v-on:update:title="doc.title =$event"
></text-document>

For convenience, we offer a shorthand for this pattern with the .sync modifier:

<text-document v-bind:title.sync="doc.title"></text-document>

Note that v-bind with the .sync modifier does not work with expressions (e.g. v-bind:title.sync=”doc.title + ‘!’” is invalid). Instead, you must only provide the name of the property you want to bind, similar to v-model.

The .sync modifier can also be used with v-bind when using an object to set multiple props at once:

<text-document v-bind.sync="doc"></text-document>

This passes each property in the doc object (e.g. title) as an individual prop, then adds v-on update listeners for each one.

Using v-bind.sync with a literal object, such as in v-bind.sync=”{ title: doc.title }”, will not work, because there are too many edge cases to consider in parsing a complex expression like this.

Page structure


text:
SIAM News Blog
SIAM News

# Convergence in Imaging Sciences

For those of us trained in the mathematical sciences, the notion of convergence has a very specific connotation of coming together without ever moving apart (you know the drill: for every $$\epsilon,$$ there exists a $$\delta$$ such that ….). Here I will focus on a more expansive idea of convergence as the basis for divergence — an explosion of new developments and opportunities, at least in the area of imaging sciences. In recent years, imaging sciences has experienced a rather marked increase in fundamentally new advances enabled by the convergence of technological capabilities and interests, some of which are far removed from the world of applied mathematics.

One source of these developments is the wealth of novel—and in many cases, challenging—sensor technologies. The role of applied mathematics in sensor data modeling and processing is certainly not new. The search for hydrocarbons in Earth’s subsurface is perhaps the quintessential example of a highly successful collaboration, dating back to at least the 1970s, between those who built sensors (seismic, acoustic, electromagnetic, etc.) and those tasked with modeling and extracting information from the resulting data. However, the quantity and diversity of sensing technologies that have emerged over the past 10 to 15 years is unprecedented. This is perhaps most evident in the general field of optics. From the single-pixel camera developed by Richard Baraniuk’s group at Rice University to the gigapixel camera created by David Brady and his team at Duke University, there is no shortage of examples that intimately tie a new sensing method’s success with a suite of associated mathematical models and processing methods. Biomedical applications are driving many of these advances. Laura Waller (University of California, Berkeley), Vasilis Ntziachristos (Technical University of Munich), and Lihong Wang (California Institute of Technology) are developing sensing systems that represent some of the most compelling instances of new imaging modalities employing light; in many cases these are “mixed” with sound, giving rise to improvements in both computational imaging methods and the mathematical analysis accompanying the resulting inverse problems. Peter Kuchment’s (Texas A&M University) work on the analysis of photoacoustic imaging problems is a good example.

Imaging sciences has seen a recent explosion of computational methods that have significantly advanced the field. This figure shows compressed sensing reconstruction of a magnetic resonance image. Compressed sensing allows images and signals to be reconstructed from small amounts of data. Here, a Split Bregman method is applied to a compressed sensing problem that arises in magnetic resonance imaging. Image credit: Tom Goldstein and Stanley Osher, adapted from [1].

As physicists and engineers create new sensing methods, convergence is also evident within the mathematics community proper. I would like to focus specifically on the area of inverse problems in which a physical model stands between the data one possesses and the information one desires. In some cases, researchers can develop closed form, analytical methods for turning sensor data into images; the best known among these is convolution back-projection (also called filtered back projection or Radon inversion), originally developed for parallel beam X-ray computed tomography and since generalized in a variety of mathematically-interesting and practically-useful directions, including fan beam, cone beam, and helical scan cases. Implementation of these methods generally has low computational overheard, i.e., they are “fast.” However, they also tend to apply to very specific sensing geometries and assumptions about the underlying physics, a fact that hasn’t deterred their recent, rather remarkable expansion. Using sophisticated ideas in microlocal analysis, mathematicians and their colleagues—including Todd Quinto (Tufts University), Margaret Cheney (Colorado State University), and Bill Lionheart (University of Manchester)—have developed interesting methods for solving imaging problems when the sensing geometry is less than ideal. They have demonstrated the utility of these ideas not only in the case of X-ray imaging, but more broadly to problems of wave propagation, including sonar, radar, and more recently Compton scatter imaging. I would be remiss to not acknowledge that these recent advancements build on an existing base of work dating back at least (to the best of my knowledge) to the efforts of folks like Gregory Beylkin, Douglas Miller, Michael Oristaglio, and others who in the 1980s pioneered many of these ideas in the context of geophysical sensing for hydrocarbon exploration.

A large body of work in the use of numerical/computational techniques for solving inverse problems also exists. The intent is to discretize the physical model and pose image formation as the answer to a variational problem in which a “good” solution balances fidelity to the data against information one possesses in addition to the data itself, often quantified mathematically in terms of some degree of smoothness of the image or its derivatives. Interpreting the variational problem through a probabilistic lens (a technique known for decades) has recently produced some rather compelling results in the area of uncertainty quantification (UQ), where the output is not a single image but an entire probabilistic model. This model offers insight into not only the most likely image but also the level of confidence in such an estimate, which is valuable information when deciding how best to collect new data. The work of Omar Ghattas’s group at the University of Texas and Youssef Marzouk’s group at the Massachusetts Institute of Technology provide great examples of this line of inquiry.

In contrast to the analytical methods, the computational ones do provide more flexibility for addressing nonideal problems in which sensors may be arbitrarily located, the underlying medium inhomogeneous, or the physics not well approximated in a “nice” manner. The price is computational: this approach typically demands the solution to a high-dimensional, non-convex optimization problem, where both gradient information and the evaluation of the cost function require the solution of tens, hundreds, or even thousands of discretized partial differential equations. Thus, regardless of whether one seeks a single solution to a variational problem or an entire UQ model, the corresponding mathematical challenges tend to center around problems in numerical linear algebra (including fast linear systems solves, preconditioning, and reduced order modeling) as well as optimization. Recent studies focus on theory and methods that use randomization as a tool for reducing system size and hence processing complexity.

Moving forward, I have to believe that there will be opportunities to bring together these two separate approaches to imaging—the analytical and the computational—because the strengths of one balance the shortcomings of the other. Samuli Siltanen (University of Helsinki) and his collaborators developed complex geometric optics methods for an array of inverse problems, most notably electrical impedance tomography, which may offer a clue to a possible union. Their work is based on a rather deep and analytically elegant mathematical formulation of the physics of the problem, which requires the solution to a numerical inverse problem at one crucial point. Perhaps these ideas will lead to progress in combining some of the aforementioned areas. Or maybe a totally different variety of insight will be necessary. Regardless of the details, one thing is certain: imaging sciences will continue to provide relevant, intellectually-stimulating problems that allow applied mathematicians and their collaborators to impact the field for years to come.

References
[1] Goldstein, T., & Osher, S. (2009). The Split Bregman Method for L1-Regularized Problems. SIAM Journal on Imaging Sciences, 2(2), 323-343.

Eric Miller is a professor and chair of the Department of Electrical and Computer Engineering at Tufts University. He is the chair of—and the SIAM News liaison for—the SIAM Activity Group on Imaging Sciences.

format: plain


text:
# AutoAssociativeMechanism¶

## Overview¶

An AutoAssociativeLearningMechanism is a subclass of Learning Mechanism, modified for use with a RecurrentTransferMechanism to train its recurrent_projection.

## Creating an AutoAssociativeLearningMechanism¶

An AutoAssociativeLearningMechanism can be created directly by calling its constructor, but most commonly it is created automatically when a RecurrentTransferMechanism is configured for learning, (identified in its activity_source attribute).

## Structure¶

An AutoAssociativeLearningMechanism is identical to a Learning Mechanism in all respects except the following:

## Execution¶

An AutoAssociativeLearningMechanism executes in the same manner as standard Learning Mechanism, with two exceptions: * 1) its execution can be enabled or disabled by setting the learning_enabled

<RecurrentTransferMechanism.learning_enabled> attribute of the RecurrentTransferMechanism with which it is associated (identified in its activity_source attribute).

## Class Reference¶

psyneulink.library.components.mechanisms.adaptive.learning.autoassociativelearningmechanism.DefaultTrainingMechanism

alias of ObjectiveMechanism

class psyneulink.library.components.mechanisms.adaptive.learning.autoassociativelearningmechanism.AutoAssociativeLearningMechanism(variable, function=Hebbian, learning_rate=None, learning_signals=LEARNING_SIGNAL, modulation=ModulationParam.ADDITIVE, params=None, name=None, prefs=None)

Implements a Learning Mechanism that modifies the matrix parameter of an AutoAssociativeProjection (typically the recurrent_projection of a RecurrentTransferMechanism).

Parameters: variable (List or 2d np.array : default None) – it must have a single item that corresponds to the value required by the AutoAssociativeLearningMechanism’s function; it must each be compatible (in number and type) with the value of the Mechanism’s InputState (see variable for additional details). learning_signals (List[parameter of Projection, ParameterState, Projection, tuple[str, Projection] or dict] : default None) – specifies the matrix to be learned (see learning_signals for details of specification). modulation (ModulationParam : default ModulationParam.ADDITIVE) – specifies the default form of modulation used by the AutoAssociativeLearningMechanism’s LearningSignals, unless they are individually specified. function (LearningFunction or function : default Hebbian) – specifies the function used to calculate the AutoAssociativeLearningMechanism’s learning_signal attribute. It must take as its variable argument a list or 1d array of numeric values (the “activity vector”) and return a list, 2d np.array or np.matrix representing a square matrix with dimensions that equal the length of its variable (the “weight change matrix”). learning_rate (float : default None) – specifies the learning rate for the AutoAssociativeLearningMechanism. (see learning_rate for details). params (Dict[param keyword: param value] : default None) – a parameter dictionary that specifies the parameters for the Projection, its function, and/or a custom function and its parameters. By default, it contains an entry for the Projection’s default function and parameter assignments. Values specified for parameters in the dictionary override any assigned to those parameters in arguments of the constructor. name (str : default see name) – specifies the name of the AutoAssociativeLearningMechanism. prefs (PreferenceSet or specification dict : default Mechanism.classPreferences) – specifies the PreferenceSet for the AutoAssociativeLearningMechanism; see prefs for details.
variable

2d np.array – has a single item, that serves as the template for the input required by the AutoAssociativeLearningMechanism’s function, corresponding to the value of the activity_source.

activity_source

OutputState – the OutputState that is the sender of the AutoAssociativeProjection that the Mechanism trains.

input_states

ContentAddressableList[OutputState] – has a single item, that contains the AutoAssociativeLearningMechanism’s single ACTIVATION_INPUT InputState.

primary_learned_projection

AutoAssociativeProjection – the Projections with the matrix parameter being trained by the AutoAssociativeLearningMechanism. It is always the first Projection listed in the AutoAssociativeLearningMechanism’s learned_projections attribute.

learned_projections

List[MappingProjection] – all of the AutoAssociativeProjections modified by the AutoAssociativeLearningMechanism; the first item in the list is always the primary_learned_projection.

function

LearningFunction or function : default Hebbian – the function used to calculate the learning_signal (assigned to the AutoAssociativeLearningMechanism’s LearningSignal(s)). It’s variable must be a list or 1d np.array of numeric entries, corresponding in length to the AutoAssociativeLearningMechanism’s ACTIVATION_INPUT (primary) InputState.

learning_rate

float, 1d or 2d np.array, or np.matrix of numeric values : default None – determines the learning rate used by the AutoAssociativeLearningMechanism’s function to scale the weight change matrix it returns. If it is a scalar, it is used to multiply the weight change matrix; if it is a 2d array or matrix, it is used to Hadamard (elementwise) multiply the weight matrix (allowing the contribution of individual connections to be scaled); if it is a 1d np.array, it is used to Hadamard (elementwise) multiply the input to the function (i.e., the value of the AutoAssociativeLearningMechanism’s ACTIVATION_INPUT InputState, allowing the contribution of individual units to be scaled). If specified, the value supersedes the learning_rate assigned to any Process or System to which the AutoAssociativeLearningMechanism belongs. If it is None, then the learning_rate specified for the Process to which the AutoAssociativeLearningMechanism belongs belongs is used; and, if that is None, then the learning_rate for the System to which it belongs is used. If all are None, then the default_learning_rate for the function is used (see learning_rate for additional details).

learning_signal

2d ndarray or matrix of numeric values – the value returned by function, that specifies the changes to the weights of the matrix parameter for the AutoAssociativeLearningMechanism’slearned_projections <AutoAssociativeLearningMechanism.learned_projections>; It is assigned as the value of the AutoAssociativeLearningMechanism’s LearningSignal(s) and, in turn, its LearningProjection(s).

learning_signals

List[LearningSignal] – list of all of the LearningSignals for the AutoAssociativeLearningMechanism, each of which sends one or more LearningProjections to the ParameterState(s) for the matrix parameter of the AutoAssociativeProjection(s) trained by the AutoAssociativeLearningMechanism. Although in most instances an AutoAssociativeLearningMechanism is used to train a single AutoAssociativeProjection, like a standard Learning Mechanism, it can be assigned additional LearningSignals and/or LearningProjections to train additional ones; in such cases, the value for all of the LearningSignals is the the same: the AutoAssociativeLearningMechanism’s learning_signal attribute, based on its activity_source. Since LearningSignals are OutputStates, they are also listed in the AutoAssociativeLearningMechanism’s output_states attribute.

learning_projections

List[LearningProjection] – list of all of the LearningProjections <LearningProjection> from the AutoAssociativeLearningMechanism, listed in the order of the LearningSignals to which they belong (that is, in the order they are listed in the learning_signals attribute).

output_states

ContentAddressableList[OutputState] – list of the AutoAssociativeLearningMechanism’s OutputStates, beginning with its learning_signals, and followed by any additional (user-specified) OutputStates.

output_values

2d np.array – the first item is the value of the LearningMechanism’s learning_signal, followed by the values of any additional (user-specified) OutputStates.

modulation

ModulationParam – the default form of modulation used by the AutoAssociativeLearningMechanism’s LearningSignal(s), unless they are individually specified.

name

str – the name of the AutoAssociativeLearningMechanism; if it is not specified in the name argument of the constructor, a default is assigned by MechanismRegistry (see Naming for conventions used for default and duplicate names).

prefs

PreferenceSet or specification dict – the PreferenceSet for the AutoAssociativeLearningMechanism; if it is not specified in the prefs argument of the constructor, a default is assigned using classPreferences defined in __init__.py (see PreferenceSet` for details).


text:
# Just Some Division

Number Theory Level 1

$$N$$ is a positive integer such that $$10N$$ leaves a remainder of 70 when divided by 100; that is, $10N \equiv 70 \bmod{100}.$ What is the remainder when $$N$$ is divided by 100?

×


text:
## Linear Algebra and Its Applications, Review Exercise 2.2

Review exercise 2.2. Find a basis for a two-dimensional subspace of $\mathbb{R}^3$ that does not contain $(1, 0, 0)$, $(0, 1, 0)$, or $(0, 0, 1)$.

Answer: One approach is to come up with a linear system that has a two-dimensional nullspace that excludes the coordinate vectors. For the nullspace to be two-dimensional there must be two free variables and only one basic variable; we assume that $x_2$ and $x_3$ are free variables and $x_1$ is the basic variable.

One possible system is $x_1 + x_2 + x_3 = 0$. The coordinate vectors are not solutions to this equation and hence are not part of the nullspace.

If we set $x_2 = 1$ and $x_3 = 0$ then we have $x_1 = -1$. If we set $x_2 = 0$ and $x_3 = 1$ then we again have $x_3 = -1$. The two vectors $(-1, 1, 0)$ and $(-1, 0, 1)$ are thus basis vectors for the nullspace.

NOTE: This continues a series of posts containing worked out exercises from the (out of print) book Linear Algebra and Its Applications, Third Edition by Gilbert Strang.

If you find these posts useful I encourage you to also check out the more current Linear Algebra and Its Applications, Fourth Edition, Dr Strang’s introductory textbook Introduction to Linear Algebra, Fourth Edition and the accompanying free online course, and Dr Strang’s other books.

This entry was posted in linear algebra. Bookmark the permalink.


text:
# Quiz | The periodic table and Chemical Periodicity

1

How many atoms of hydrogen do you have in 2.0 moles of H2?

6.0 x 1023 atoms

1.2 x 1024 atoms

2.4 x 1024 atoms

We need the mass to answer this question

n = $\frac{\mathrm{N}}{{\mathrm{N}}_{\mathrm{A}}}$   ⇒   number of dihydrogen atoms ${\mathrm{N}}_{{\mathrm{H}}_{2}}$ = ${\mathrm{n}}_{{\mathrm{H}}_{2}}$ x NA = 2.0 x 6.022 x 1023 atoms

⇒ number of hydrogen atoms ${\mathrm{N}}_{\mathrm{H}}$ = 2 x ${\mathrm{N}}_{{\mathrm{H}}_{2}}$

2

What is the SI unit of molar mass?

g

g.mol-1

mol

no unit

The SI unit of molar mass M is g.mol-1

3

What is the mole number of 12.4 g of MgCl2 (MMg = 24.3 g.mol-1, MCl = 35.5 g.mol-1)?

1.30 x 10-2 mol

0.130

0.207

1.18 x 103 mol

mole number ${\mathrm{n}}_{{\mathrm{MgCl}}_{2}}$ = $\frac{{\mathrm{m}}_{{\mathrm{MgCl}}_{2}}}{{\mathrm{M}}_{{\mathrm{MgCl}}_{2}}}$

with MMgCl2 = MMg + 2 x MCl = 95.3 g.mol-1

4

What is the empirical formula of CH3CH2CH2O-O-CH2CH2CH3?

C3H7O

C6H14O2

(CH3CH2CH2O)2

CH3(CH2)2O2(CH2)2CH3

Empirical formula = the simplest whole-number ratio of atoms in a compound

5

Which of the following statements is incorrect?

Halogens are colorful and corrosive nonmetals and are diatomic molecules in nature

Noble gases are the last group of the periodic table and are inert gases

Alkali metals form the first group of the periodic table while alkaline-earth metals form the second

None of the above

6

What is the second period in the periodic table?

Li, Be, B, C, N, O, F, Ne

Be, Mg, Ca, Sr, Ba, Ra

Na, Mg, Al, Si, P, S, Cl, Ar

F, Cl, Br, I, At


text:
# Why do the engineers need to be on board during testing?

I just finished watching National Geographic's Megafactories: Boeing 747-8.

During the test flights, a bunch of engineers are on board the plane, presumably controlling the water tanks that distribute weight, and collecting the data.

Another time I'd seen it was when they were testing detection systems for microbursts. There were about a dozen engineers sitting on the plane, watching monitors while the crew deliberately flew into hazardous conditions.

Why do they risk the safety of these engineers, when presumably the work they're doing could be automated or controlled remotely? For data to be observed, couldn't they do that from the ground?

Is this a case of "we've always done it this way?" Even now that we probably have the technology that would allow the engineers to avoid having to go on test flights, I'm guessing that changing this procedure would be a lengthy and difficult process.

Besides the pilots, why does anyone else need to be on board?

• :) If I'm not mistaken, in the past the "engineers" would be the first to cross the bridge they've just built :D Jun 6, 2014 at 19:10
• Who claims that the engineers "need" to be on board?
– user2168
Jun 8, 2014 at 23:44
• Skin in the game -> better aircraft design. Dec 13, 2018 at 22:28

More and more data is collected in flight testing of aircraft. While 50 years ago they might have only designed for a small number of scenarios, the advances in computing allow them to design modern aircraft for thousands of scenarios. Modern certification standards include more and more requirements, which include flight testing for many of these requirements.

While some information is sent to the ground (like in this video), other information may not be. Airplanes in flight test have sensors for temperature, pressure, stress, and many other parameters located throughout the plane. These generate a lot of data, more than may be practical to send on a live data link. There may be several reasons that the engineers would want to analyze a lot of information onboard.

Some of the tests need to have multiple parameters coordinated with the pilots. If they are flight testing stall, for instance, they need to be sure they have flight parameters are correct for that test. The engineers give the pilots guidance on getting the airplane into the right configuration. The engineers also verify that the the information they collect is sufficient for the needs of the test. It's much more expensive to come back and realize they didn't get what they needed and must go back up to re-run the test.

Some of the data is also critical for safety. One subject of the tests is flutter. Flutter conditions can be very dangerous to the aircraft. The engineers help monitor the data and make sure that things don't get out of hand. If a data link were to be interrupted in a case like this, safety could be compromised.

In a perfect world, you wouldn't need the pilots as well...

1. No modern instrument can currently match the feeling of "just being there".
2. Data recorded on the plane and transmitted to the tower is lagging or even impossible to collect live (due to technical difficulties).
3. Flying takes a lot of attention from the pilot. Even if they're good engineers (besides being a pilot), you wouldn't want to waste an experiment.
4. Engineers don't go to preliminary (dangerous) flight test.
5. Some engineers enjoy being on board the machine they designed.
• how much is the realtime delay in data collection? Jun 6, 2014 at 13:18
• Commonly, a few (<5) seconds are accumulated. Jun 6, 2014 at 13:29
• I would also question the implications of answer 4. By making that statement, you are implying that the flights engineers do go on are not dangerous. If they are moving large quantities of water weight on board, affecting the CG, and recording the effects of the changed CG, it seems that that flight may be (just as) dangerous. Also asnwer 1 is subjective, and an engineer aboard is not likely there for subjective 'feelings'. Jun 6, 2014 at 14:24
• this is a bit off-topic, but engineers who participate in policy-making in their organization, are expected to be biased towards requiring engineers on board. Jun 6, 2014 at 15:02
• I'd also add that they are there just in case there is something wrong with the equipment or software and the data isn't being recorded correctly. It would be bad to waste an entire (very expensive) flight because data wasn't being recorded correctly, especially if it could have been fixed without cancelling the flight. Jun 6, 2014 at 15:36

Usually, engineers on board on the aircraft serve the same purpose as engineers in a control room. (The control room for space missions in Houston is probably the best, most widely known example of a control room.)

Having the engineers on board reduces the need to send the data to the ground via telemetry (TM), which may be a necessity based on limited bandwith, etc. A description and illustration of the control room and its purpose appear here.

It also allows for better coordination amongst the crew, as the pilots, who need information that the engineers are monitoring, can discuss more effectively with the engineers when they are on intercom.

Flight Test Enginners (FTEs) are another kind of engineer on board the aircraft, and they specialize in test conduct. They are present to guide the test pilot, assist in determining if the maneuver was flown correctly, evaluate data quality, and make decisions about whether to continue testing.

• Hi Mark. Just a heads up, here: I see you have linked a fair bit to multiplyleadership.com in your answers. While links to external resources to add to your answers (as opposed to the link being the primary content in the answer) can absolutely be beneficial, you should take care to ensure that this is not construed as spamming. See How to not be a spammer in the help center for further discussion on this.
– user
Jan 1, 2018 at 15:55


text:
# Conditions so that a FS induces a Frobenius adjunction

I rapidly recall a general construction exposed in this paper.

If $(\cal E,M)$ is a factorization system on $\mathbf C$ (let's say $\bf C$ has finite co/limits, or it's even co/complete) such that $\cal M$ satisfies the 3-for-2 property, then there is a rule to create a reflective subcategory $\mathcal A(\cal E,M) \subseteq \mathbf C$ out of $(\cal E,M)$, whose objects are the $X$ in $\bf C$ such that $X \to *$ lies in $\cal M$.

The reflector $R \colon \mathbf C \to \mathcal A(\cal E,M)$ is the functor sending an object $A$ into the object $RA$ appearing in the (essentially unique) factorization $A \to RA \to *$ of the terminal arrow. This is evidently a left adjoint to the inclusion $i$.

I'm looking for

1. Examples where a reflective subcat $i : \mathcal B \subseteq \mathbf C$ is Frobenius reflective, i.e. there exists an adjunction $R \dashv i \dashv R'$ with a canonical isomorphism $R \cong R'$ (so an adjunction $R \dashv i \dashv R$);
2. Sufficient conditions on $(\cal E,M)$ such that $\mathcal A(\cal E,M)$ is Frobenius reflective.

Any clue?

• For the first - there are some in "Bireflectivity" by Freyd, O’Hearn, Power, Takeyama, Street and Tennent – მამუკა ჯიბლაძე Dec 20 '16 at 17:49
• Marvelous. I would never have been able to find it – Fosco Dec 20 '16 at 18:01

Let $i\dashv r\dashv i:\mathcal{B}\hookrightarrow \mathcal{A}$ be a bireflective subcategory. $r$ is necessarily left exact hence this a special type of essential localization called a 'quintessential localization' in Johnstone's 1996 TAC paper (see https://ncatlab.org/nlab/show/quality+type for references).

An example of a quintessential localization is the inclusion of $Set$ into the category with objects $(X,e:X\to X)$ where $X$ is a set and $e$ is an idempotent map $e^2=e$ and equivariant maps $f:(X_1,e_1)\to (X_2,e_2)$ with $f\cdot e_1=e_2\cdot f$. The inclusion $i$ maps a set $X$ to $(X,id_X)$ whereas the reflection $r$ maps $(X,e)$ to the set of fixed points $\{x|e(x)=x\}$. In this situation $r$ is left as well as right adjoint to $i$.

In their 1989 paper 'On the complete lattice of essential localizations' Kelly and Lawvere give the following characterization of essential localizations (see also Bedos&Quigg TAC 2011 no.20):

$\mathbf{Theorem\mbox{ }3.2}\quad$ A set $E$ of morphisms of a finitely bi-complete category $\mathcal{A}$ is of the form $\mathcal{B}^\perp$ for some essential localization $l\dashv r\dashv i:\mathcal{B}\hookrightarrow \mathcal{A}$ iff there exist factorization systems $(E,M)$ and $(N,E)$ on $\mathcal{A}$.

[Initially I then claimed here that it suffices to replace N by M in this proposition to get a specialization to quintessential localizations but now I think that this makes the situation too symmetric because then $(E,M)$ and $(M,E)$ yield localizations which either are the same in which case $E$ and $M$ coincide or there are in fact two different localizations. So after all, I have to retract the answer to the second question. I've decided to let stay the rest since it provides at least some useful information although in this form more suitable for a comment. My apologies!]

In theorem 2.4 Kelly-Lawvere show that essential localizations correspond to associated pairs.

$\mathbf{Def.}\quad$ A pair $(\mathcal{B},\mathcal{C})$ of subcategories of a category $\mathcal{A}$ is called an associated pair if $\mathcal{B}$ is reflective and $\mathcal{C}$ is coreflective and furthermore $\mathcal{B}^\perp=\mathcal{C}^\top$.

The properties given there specalize to quintessential subcategories $\mathcal{B}$ in the form that they correspond to associated pairs $(\mathcal{B},\mathcal{B})$ hence $\mathcal{B}^\perp=\mathcal{B}^\top$ and, furthermore, $\mathcal{B}^{\perp\top}=\mathcal{B}=\mathcal{B}^{\top\perp}$.

Let $(E,M)$ be the factorization system corresponding to the quintessential subcategory $\mathcal{B}$ by thm.3.4. Then from $E=\mathcal{B}^\perp$ and the above we get the following necessary condition on $E$: $$E^\perp=E^\top\quad.$$


text:
Problem: Calculate limit of $\frac{1}{\sqrt{n+1}} + \frac{1}{\sqrt{n+2}} + \frac{1}{\sqrt{n+3}} + \cdots + \frac{1}{\sqrt{n+n^2}}$ as $n$ approaches infinity.

Solution: Denote the above some as $X$, then we can bound it: $$\infty\longleftarrow\frac{1}{\sqrt{n+n^2}} \lt X \lt \frac{n^2}{\sqrt{n+1}} \lt \frac{n^2}{\sqrt{n}} = \sqrt{\frac{n^4}{n}}\longrightarrow \infty.$$

So, from the Squeeze Principle, $\lim X = \infty$. Am I doing the right thing?

-
I had assumed the first fraction in the inequality was a typo when I TeX-ed up the question; since several responders commented, I've restored it (after TeX-ing) to its original statement. –  Arturo Magidin Nov 17 '10 at 21:42

In proving something diverges to $\infty$, you don't need to squeeze it both from below and from above: it is enough to "half-squeeze" it from below by something that goes to $\infty$ (because the limit you want is getting "pushed up" to $\infty$). So here, you can just note that each summand is greater than or equal to $\frac{1}{\sqrt{n+n^2}}$, so the sum of $n^2$ of them is at least as large as $\frac{n^2}{\sqrt{n+n^2}}$, and since $\lim\limits_{n\to\infty}\frac{n^2}{\sqrt{n+n^2}}=\infty$ and $\frac{n^2}{n+n^2}\leq X(n)$ for each $n$ (notice that what you called $X$ actually varies with each $n$, so you should not give it a name that makes it look like it is fixed), then $\lim\limits_{n\to\infty}X(n)=\infty$ as well.

-
Might be a trivial question, but why isn't it correct to lower bound with just the most smallest element (I mean, instead of ${n^2}$)? Isn't that inequality correct? –  Ma.H Nov 17 '10 at 21:34
@Ma.H: Yes, you can bound below by just the smallest summand (or by any summand, for that matter, since they are all positive). But being able to bound is not the same as being able to reach the conclusion you want. Here, each summand $\frac{1}{\sqrt{n+k}}$ does not go to $\infty$ as $n\to \infty$, it goes to $0$. So out of that bound the only thing you get is that the limit of $X(n)$ is greater than or equal to $0$; which, while true, is not what you want to conclude. –  Arturo Magidin Nov 17 '10 at 21:36
Got it. Now I see why my approach was incorrect in some of the problems. Thanks! –  Ma.H Nov 17 '10 at 22:01

Yes, you are doing the right thing, assuming you meant $n^2 / \sqrt{n+n^2} < X$ rather than $1 / \sqrt{n+n^2} < X$.

-
This answer corresponds to the original post (cf. Ross' answer). –  Shai Covo Nov 17 '10 at 21:21

First $\frac{1}{\sqrt{n+n^{2}}} \rightarrow 0$ if $n\rightarrow \infty$.

Futhermore, in the infinite case the squeeze principle used so:

if $a_{n}\leq b_{n}$ and $a_{n}\rightarrow \infty$ then $b_{n}\rightarrow \infty$.

Also you sequence i do not understand,

-

The term $\frac{1}{\sqrt{n+n^2}}$ goes to zero as $n \rightarrow \infty$, so that side doesn't work. You should think about how many terms you are adding.

-
Yes, my bad on that. It goes zero indeed. So, my bounding was incorrect in this case. –  Ma.H Nov 17 '10 at 21:05
@Ma.H: I assumed it was a typo, given that you wrote it up so poorly. Please try to format correctly; see meta.math.stackexchange.com/questions/107/… –  Arturo Magidin Nov 17 '10 at 21:12

Each term is bounded from below by the last term of your sum. Therefore a lower bound for the sum is $n^2$ times the last term. Show that this lower bound diverges as $n$ goes to infinity.

In this case, you only really need a lower bound. Don't bother with an upper bound.

-


text:
# Ethics when solving problems on Brilliant

The cool thing about Brilliant problems is that your answers are checked instantly, because just a numerical answer is required. There is a downside to this though: you don't need to prove something in order to use it to solve a problem, which is different than actual olympiads, where you do have to prove it. This has raised some ethical issues:

• If a problem is about some big number, and you first try smaller numbers $(1,2,3,\dots)$ and find a pattern, do you try to prove (probably by induction) that that pattern continues? Or do you just assume the pattern will continue and get the right answer without actually solving the problem completely?

For example: The table is empty. Every minute, John doubles the amount of money that's on the table and adds one more dollar. So, after one minute, there is just one dollar on the table. If John has $15000, how long can he keep this up? Trying several small cases, you will find that there is 1 dollar after 1 minute, 3 dollar after 2 minutes, 7 dollars after 3 minutes, etcetera. You could now conjecture that after $n$ minutes, John will have put $2^n-1$ dollars on the table. If you assume this pattern is no coincidence and it will continue, you will quickly find out that John can keep doing this for 13 minutes, no more. Actually proving that this pattern will continue will take you some more effort, which you do not have to go through, as only the answer is required. • If a problem is about a quite general case and what's asked (apparently) does not depend on which case it is, do you try to solve the problem for the general case, or do you just pick a special case that is very easy? For example: A group of friends is celebrating Christmas together by giving each other presents, but without knowing who they got their present from. So, each one has written down his/her name on a piece of paper, and put it in a box. After the box has been shaken a few times, everyone takes out a piece of paper. However, you obviously can't give yourself a present. What is the expected number of people to take out a piece of paper with his/her own name on it? As it is unknown how large the group of friends is, it apparently doesn't matter. What you could do is just try a group of 2 friends, and you will find out that the answer is 1. You then know the answer to the question, but did not prove that this is the answer for any number of friends, which is the hard part of this problem. What are your thoughts on this? Do you try to always solve it for the general case, or do you give the answer whenever you think you got it right? Note by Tim Vermeulen 7 years ago This discussion board is a place to discuss our Daily Challenges and the math and science related to those challenges. Explanations are more than just a solution — they should explain the steps and thinking strategies that you used to obtain the solution. Comments should further the discussion of math and science. When posting on Brilliant: • Use the emojis to react to an explanation, whether you're congratulating a job well done , or just really confused . • Ask specific questions about the challenge or the steps in somebody's explanation. Well-posed questions can add a lot to the discussion, but posting "I don't understand!" doesn't help anyone. • Try to contribute something new to the discussion, whether it is an extension, generalization or other idea related to the challenge. • Stay on topic — we're all here to learn more about math and science, not to hear about your favorite get-rich-quick scheme or current world events. MarkdownAppears as *italics* or _italics_ italics **bold** or __bold__ bold - bulleted- list • bulleted • list 1. numbered2. list 1. numbered 2. list Note: you must add a full line of space before and after lists for them to show up correctly paragraph 1paragraph 2 paragraph 1 paragraph 2 [example link](https://brilliant.org)example link > This is a quote This is a quote  # I indented these lines # 4 spaces, and now they show # up as a code block. print "hello world" # I indented these lines # 4 spaces, and now they show # up as a code block. print "hello world" MathAppears as Remember to wrap math in $$ ... $$ or $ ... $ to ensure proper formatting. 2 \times 3 $2 \times 3$ 2^{34} $2^{34}$ a_{i-1} $a_{i-1}$ \frac{2}{3} $\frac{2}{3}$ \sqrt{2} $\sqrt{2}$ \sum_{i=1}^3 $\sum_{i=1}^3$ \sin \theta $\sin \theta$ \boxed{123} $\boxed{123}$ ## Comments Sort by: Top Newest This precise thing happened to me in a nice polynomial problem in level 4 algebra this week. I guessed the answer correctly. And then took a couple of days to prove it o_0. I am waiting for a simple solution next week. I am aware I solve problems in a very complicated manner :( A part of mathematics is guesswork. Once I know my answer is correct, I can prove the claim that leads to the answer. Surely at the time of entering the answer, I am unethical. But on the long run, I am not. It is a part of guessing and proving. Another interesting issue of ethics is using a computer code to answer questions. I generally write a computer code to verify my answer (if I have only one try left). Clearly if I just plug the answer in, I am unethical. But using a computer allows me to guess patterns faster and formulate better hypotheses. I also discuss the problems with my friends (who dont have brilliant account and they do not want one). Clearly this might be considered a breach of ethics too. But it is a part of problem-solving culture. In teens, students are encouraged to be independent, but some of the best research arises from collaboration. Further one learns faster by discussing with like-minded individuals. The main point is that I lurk in Brilliant for the joy of problem solving and to learn new techniques. Using a computer, and guessing the answer first on brilliant are some techniques I use. These help me learn the subject better. I do not think my score reflects my intelligence for the mentioned reasons. - 6 years, 12 months ago Log in to reply When we think about it, the ethics of problem solving here stoop much lower when people begin to use things like calculators for large numbers, or worse, Wolfram|Alpha for complicated expressions. (I sheepishly admit that I've used a calculator on some problems due to frustration.) - 6 years, 12 months ago Log in to reply The table is empty. Every minute, John doubles the amount of money that's on the table and adds one more dollar. So, after one minute, there is just one dollar on the table. If John has$15000, how long can he keep this up?

Trying several small cases, you will find that there is 1 dollar after 1 minute, 3 dollar after 2 minutes, 7 dollars after 3 minutes, etc. You could now conjecture that after n minutes, John will have put 2^n−1 dollars on the table. If you assume this pattern is no coincidence and it will continue, you will quickly find out that John can keep doing this for 13 minutes, no more. Actually proving that this pattern will continue will take you some more effort, which you do not have to go through, as only the answer is required.

Finding a pattern and assuming that the pattern is true is wrong.

Let the amount of money after n minutes be $f(n)$. Then $f(n+1)=2f(n)+1$ and $f(0)=0$. $2^n - 1$ satisfies this function so it is the correct answer.

This approach uses 'finding a pattern and guessing the general term' technique, but it is not wrong, as we have made no false assumptions.

- 7 years ago

If you prove that $2^n-1$ actually satisfies the function, then there's nothing wrong with that. But if you see that the function satisfies for the first few values, and then just assume that it will continue to satisfy (without proving it), then you are making assumptions.

- 7 years ago

The table is empty. Every minute, John doubles the amount of money that's on the table and adds one more dollar. So, after one minute, there is just one dollar on the table. If John has \$15000, how long can he keep this up?

Trying several small cases, you will find that there is 1 dollar after 1 minute, 3 dollar after 2 minutes, 7 dollars after 3 minutes, etc. You could now conjecture that after n minutes, John will have put 2^n−1 dollars on the table. If you assume this pattern is no coincidence and it will continue, you will quickly find out that John can keep doing this for 13 minutes, no more. Actually proving that this pattern will continue will take you some more effort, which you do not have to go through, as only the answer is required.

Finding a pattern and assuming that the pattern is true is wrong.

Let the amount of money after n minutes be $f(n)$. Then $f(n+1)=2*f(n)+1$ and $f(0)=0$. $2^n - 1$ satisfies this function so it is the correct answer.

This approach uses 'finding a pattern and guessing the general term' technique, but it is not wrong, as we have made no false assumptions.

- 7 years ago

hey friend are you on facebook??? would like to interact with you and have some discussion regarding questions,,

- 7 years ago

- 7 years ago

\overline{abc}

- 7 years ago

This is good point I think. But I don't see any remedy over it. For example if problem asks to find out last three digits of 23! then one can use mathematica and write the correct answer instead of using mathematical weapons. Do you suggest some solution to this problem?

- 7 years ago

It depends whether it is in Math Olympiads or Computer Science. If it is in Math Olympiads, there is apparently a way do solve it mathematically and I'd say it's cheating when you use a computer.

- 7 years ago

Ultimately, the purpose of brilliant is for students to learn. If a student decides to "cheat" in this manner, he may be robbing himself of a chance to pick up a new technique. Of course, he can answer first and read the rigourous proof the following week, but the motivation is somewhat lessened and a bit of frustration (at failing to solve the problem) can actually motivate him to remember the solution.

Bottom line is: we're all in charge of our own education.

That being said, testing and guessing isn't a bad start: in fact that's how most interesting conjectures and theorems are born. I certainly hope that students won't just stop there, that they'd at least put in some effort to prove the general theorem.

- 7 years ago

For your last question, when I solve problems I sometimes assume things. For example, in your example with the money, if I saw those partial sums I would assume the same thing and report my answer. However, since I am an inquisitive person I would not just stop there and be done with it, I usually try to prove / figure out why that happens, and I'm sure other people do something like that, too (if they have time).

- 7 years ago

I'm not saying that everyone should write down a complete and rigorous proof before submitting an answer. Of course that might be too hard for some people on this website. But if you see a pattern of which you don't know why it is there and it just happens to be correct, you didn't really solve the problem. If some people are able to see the pattern but not to prove it, then it might be because they are in a too high problem set.

- 7 years ago

I sometimes do assume a few things when solving problems, but I try to go back the next week to see the solution and fill in the holes.

- 7 years ago

I have to admit, I usually find the pattern or look for and solve one specific case in the problem. Every once in a while I don't though. But I think the reason I do this is 1) because its easier 2) some Olympiads in the USA are in this answering style and 3) the general case is not that hard to prove if you've got the hang of it with a special case, and the pattern is usually easy to prove too. I don't think it's necessarily horrible to do these things, but if I ever get bored, I have a plethora of things to prove and write up.

In school we are always thought to tell how the questions hints toward the answer. Work smarter, not harder.

- 7 years ago

Last week, I had a difficult geometry problem which was about a figure which could be drawn in many different ways, and some area was asked. I just drew it in a way that some lines were on top of each other, which made it a very easy problem. That obviously wasn't the point of the original problem.

In my examples, the patterns were not too hard to prove, but I did once have a problem in which I found a pattern of which I had no clue why it was there, but it did lead me to the right answer.

I felt like I cheated in those situations. True, some olympiads seem to be designed to encourage this behaviour, but I did not learn anything from it, I just answered something of which I knew that it was true, not why it was true (which -I think- is the whole point).

Would you say that I shouldn't have answered before I proved it, or that I did the right thing, because after all, I did find out the correct answer myself?

- 7 years ago

Heh, check out first solution: http://www.artofproblemsolving.com/Wiki/index.php/2009AIMEIProblems/Problem4

- 7 years ago

Why would it be cheating? Brilliant has the system set up that way; it doesn't ask you to prove your answer for a reason (granted, it's partly because it would be impossible to check all of the answers that way) and many other math competitions have it like that. It's important to know both how to prove your answer and how to get to an answer quickly, as many of the olympiads which do not require you to prove your answer compensate by heavily restricting you on time.

- 7 years ago