Main Page: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
In [[mathematics]], the '''outer automorphism group''' of a [[group (mathematics)|group]] ''G''
'''Mouse keys''' is a feature of some [[graphical user interface]]s that uses the keyboard (especially [[numeric keypad]])
is the [[quotient group|quotient]] Aut(''G'') / Inn(''G''), where Aut(''G'') is the [[automorphism group]] of ''G'' and Inn(''G'') is the subgroup consisting of [[inner automorphism]]s. The outer automorphism group is usually denoted Out(''G''). If Out(''G'') is trivial and ''G'' has a trivial center, then ''G'' is said to be [[complete group|complete]].
as a [[pointing device]] (usually replacing a [[Computer mouse|mouse]]). Its roots lie in the earliest days of [[visual editor]]s when line and column navigation was controlled with [[arrow keys]] (e.g., [[HJKL keys|hjkl]], [[ESDX|ctl-esdx]]).
Today, mouse keys usually refers to the [[numeric keypad]] layout standardized with the introduction of the [[X Window System]] in 1984.<ref>[http://www.xfree86.org/current/XKBproto.pdf The X Keyboard Extension: Protocol Specification]</ref><ref>[http://www.xfree86.org/current/XKBlib.pdf The X Keyboard Extension: Library Specification]</ref>


An automorphism of a group which is not inner is called an outer automorphism. Note that the elements of Out(''G'') are cosets of automorphisms of ''G'', and not themselves automorphisms; this is an instance of the fact that quotients of groups are not in general (isomorphic to) subgroups. Elements of Out(''G'')  are    cosets of Inn(''G'') in Aut(''G'').
==Layout==
 
[[Image:X window system MouseKeys default numpad layout.svg|thumb|left|X window system MouseKeys default numpad layout]]
For example, for the [[alternating group]] ''A''<sub>''n''</sub>, the outer automorphism group is usually the group of order 2, with exceptions noted below. Considering ''A''<sub>''n''</sub> as a subgroup of the [[symmetric group]] ''S''<sub>''n''</sub> conjugation by any [[odd permutation]] is an outer automorphism of ''A''<sub>''n''</sub> or more precisely "represents the class of the (non-trivial) outer automorphism of ''A''<sub>''n''</sub>", but the outer automorphism does not correspond to conjugation by any ''particular'' odd element, and all conjugations by odd elements are equivalent up to conjugation by an even element.
 
However, for an abelian group ''A,'' the inner automorphism group is trivial and thus the automorphism group and outer automorphism group are naturally identified, and outer automorphisms do act on ''A''.
 
==Out(''G'') for some finite groups==
 
For the outer automorphism groups of all finite simple groups see the [[list of finite simple groups]]. Sporadic simple groups and alternating groups (other than the alternating group ''A''<sub>6</sub>; see below) all have outer automorphism groups of order 1 or 2. The outer automorphism group of a finite simple [[group of Lie type]] is an extension of a group of "diagonal automorphisms" (cyclic except for [[List of finite simple groups#Dn.28q.29 n .3E 3 Chevalley groups.2C orthogonal groups|D<sub>''n''</sub>(''q'')]] when it has order 4), a group of "field automorphisms" (always cyclic), and
a group of "graph automorphisms" (of order 1 or 2 except for D<sub>4</sub>(''q'') when it is the symmetric group on 3 points). These extensions are [[semidirect product]]s except that for the [[group of Lie type#Suzuki–Ree groups|Suzuki-Ree groups]] the graph automorphism squares to a generator of the field automorphisms.


{| class="wikitable"
{| class="wikitable"
|-
|-
! Group
! key
! Parameter
! action
! Out(G)
! <math>|\mbox{Out}(G)|</math>
|-
|-
| [[Integer|''Z'']]
! Num Lock
|  infinite cyclic ||  Z<sub>2</sub>
| With Alt-Shift
| 2; the identity and the map f(x) = -x
Enable/Disable MouseKeys
|-
|-
| [[cyclic group|Z<sub>''n''</sub>]] ||  ''n'' > 2
! 8
| [[Multiplicative group of integers modulo n|Z<sub>''n''</sub><sup>&times;]]</sup>
| cursor up
|[[Euler's totient function|&phi;(n)]] = <math>n\prod_{p|n}\left(1-\frac{1}{p}\right)</math> elements; one corresponding to multiplication by an invertible element in Z<sub>''n''</sub> viewed as a ring.
|-
|-
| [[cyclic group|Z<sub>''p''</sub><sup>''n''</sup>]]
! 2
| ''p'' prime, ''n'' > 1
| cursor down
| [[general linear group|GL<sub>''n''</sub>(''p'')]]
|(''p''<sup>''n''</sup> &minus; 1)(''p''<sup>''n''</sup> &minus; ''p'' )(''p''<sup>''n''</sup> &minus; ''p''<sup>2</sup>) ... (''p''<sup>''n''</sup> &minus; ''p''<sup>''n''&minus;1</sup>)
elements
|-
|-
| [[symmetric group|''S''<sub>''n''</sub>]]
! 6
| n ≠ 6 ||  [[trivial group|trivial]]
| cursor right
| 1
|-
|-
| [[symmetric group|''S''<sub>6</sub>]]
! 4
| &nbsp; ||  Z<sub>2</sub> (see below)
| cursor left
| 2
|-
|-
| [[alternating group|''A''<sub>''n''</sub>]]
! 7
| ''n'' ≠ 6 ||  Z<sub>2</sub>
| cursor up and left
| 2
|-
|-
| [[alternating group|''A''<sub>6</sub>]]
! 9
| &nbsp;
| cursor up and right
| Z<sub>2</sub> &times; Z<sub>2</sub>(see below)
| 4
|-
|-
| [[projective special linear group|PSL<sub>2</sub>(''p'')]]
! 3
| ''p'' > 3 prime ||  Z<sub>2</sub>
| cursor down and right
|2
|-
|-
| [[projective special linear group|PSL<sub>2</sub>(2<sup>''n''</sup>)]]
! 1
| ''n'' > 1 ||  Z<sub>''n''</sub>
| cursor down and left
|''n''
|-
|-
| [[projective special linear group|PSL<sub>3</sub>(4)]] = [[Mathieu group|M<sub>21</sub>]]
! /
| &nbsp; ||  [[dihedral group|Dih<sub>6</sub>]]
| [[X Window System core protocol#Mappings|select primary button]]
| 12
|-
|-
| [[Mathieu group|M<sub>''n''</sub>]]
! *
| ''n'' = 11, 23, 24 ||  [[trivial group|trivial]]
| [[X Window System core protocol#Mappings|select modifier button]]
|1
|-
|-
| [[Mathieu group|M<sub>''n''</sub>]]
! -
| ''n'' = 12, 22 ||  Z<sub>2</sub>
| [[X Window System core protocol#Mappings|select alternate button]]
|2
|-
|-
| [[Conway group|Co<sub>''n''</sub>]]
! 5
| ''n'' = 1, 2, 3 &nbsp; || [[trivial group|trivial]]
| [[Point-and-click|click selected button]]
|1
|-
|}{{Citation needed|date=February 2007}}
! +
| [[Double-click|double click selected button]]
|-
! 0
| [[Drag-and-drop|depress selected button]]
|-
! .
| [[Drag-and-drop|release selected button]]
|-
! Enter
| [[Enter key|Enter Key]]
|}


== The outer automorphisms of the symmetric and alternating groups==
==History==
{{details|Automorphisms of the symmetric and alternating groups}}
Historically, MouseKeys supported GUI programs when many [[Computer terminal#Graphical terminals|terminal]]s had no dedicated [[pointing device]]. As pointing devices became ubiquitous, the use of mouse keys narrowed to situations where a pointing device was missing, unusable, or inconvenient. Such situations may arise from the following:
*precision requirements (e.g., [[technical drawing]])
*[[accessibility|disabled user]] or ergonomics issues
*environmental limits (e.g., vibration in car or plane)
*broken equipment


The outer automorphism group of a finite simple group in some infinite family of finite simple groups can almost always be given by a uniform formula that works for all elements of the family. There is just one exception to this:<ref>ATLAS p. xvi</ref> the alternating group ''A''<sub>6</sub> has outer automorphism group of order 4, rather than 2 as do the other simple alternating groups (given by conjugation by an [[odd permutation]]). Equivalently the symmetric group ''S''<sub>6</sub> is the only symmetric group with a non-trivial outer automorphism group.
==MouseKeysAccel==
[[Image:X Protocol MouseKeysAccel Control Trajectory.svg|thumb|left|X window system MouseKeysAccel trajectory]]


:<math>
{| class="wikitable"
\begin{align}
|-
n\neq 6: \mathrm{Out}(S_n) & = 1 \\
! parameter
n\geq 3,\ n\neq 6: \mathrm{Out}(A_n) & = C_2 \\
! meaning
\mathrm{Out}(S_6) & = C_2 \\
|-
\mathrm{Out}(A_6) & = C_2 \times C_2
! mk_delay
\end{align}
| milliseconds between the initial key press and first repeated motion event
</math>
|-
! mk_interval
| milliseconds between repeated motion events
|-
! mk_max_speed
| steady speed (in action_delta units) applied each event
|-
! mk_time_to_max
| number of events (count) accelerating to steady speed
|-
! mk_curve
| ramp used to reach maximum pointer speed
|}


==Outer automorphism groups of complex Lie groups==
The [[X Window System]] MouseKeysAccel control applies action (usually cursor movement) repeatedly while a direction key
[[File:Dynkin diagram D4.png|thumb|150px|The symmetries of the [[Dynkin diagram]] D<sub>4</sub> correspond to the outer automorphisms of Spin(8) in triality.]]
{1,2,3,4,6,7,8,9} remains depressed.<ref>The X Keyboard Extension: Library Specification, Library Version 1.0/Document Revision 1.1, X Consortium Standard, X Version 11 / Release 6.4, Keyboard Controls, 10.5.2, [http://cvsweb.xfree86.org/cvsweb/xc/doc/specs/XKB/XKBlib/allchaps.ps?rev=1.1&content-type=text/vnd.viewcvs-markup The MouseKeysAccel Control]</ref> When the key is depressed, an ''action_delta'' is immediately applied. If the key remains depressed, longer than ''mk_delay'' milliseconds, some action is applied every ''mk_interval'' milliseconds until the key is released. If the key remains depressed, after more than ''mk_time_to_max'' actions have been applied, ''action_delta'' magnified ''mk_max_speed'' times, is applied every ''mk_interval'' milliseconds.
Let ''G'' now be a connected [[reductive group]] over an [[algebraically closed field]]. Then any two [[Borel subgroup]]s are conjugate by an inner automorphism, so to study outer automorphisms it suffices to consider automorphisms that fix a given Borel subgroup. Associated to the Borel subgroup is a set of [[Root system#Positive roots and simple roots|simple roots]], and the outer automorphism may permute them, while preserving the structure of the associated [[Root system#Classification of root systems by Dynkin diagrams|Dynkin diagram]]. In this way one may identify the automorphism group of the Dynkin diagram of ''G'' with a subgroup of Out(''G'').


''D''<sub>4</sub> has a very symmetric Dynkin diagram, which yields a large outer automorphism group of [[Spin(8)]], namely Out(Spin(8))&nbsp;=&nbsp;''S''<sub>3</sub>; this is called [[triality]].
The first ''mk_time_to_max'' actions increase smoothly according to an exponential.


==Outer automorphism groups of complex and real simple Lie algebras==
<math>
The preceding interpretation of outer automorphisms as symmetries of a Dynkin diagram follows from the general fact, that for a complex or real simple Lie algebra <math>\mathfrak{g}</math>, the automorphism group <math>\operatorname{Aut}(\mathfrak{g})</math> is a [[semidirect product]] of <math>\operatorname{Inn}(\mathfrak{g})</math> and <math>\operatorname{Out}(\mathfrak{g})</math>, i.e., the [[exact sequence|short exact sequence]]
\mathrm{action\_delta} \times \mathrm{mk\_max\_speed} \times \left(
\frac{ i } { \mathrm{mk\_time\_to\_max} } \right)
^{\frac{ 1000 + \mathrm{mk\_curve} } { 1000 }}
</math>


: <math>1 \;\xrightarrow{}\; \operatorname{Inn}(\mathfrak{g}) \;\xrightarrow{}\; \operatorname{Aut}(\mathfrak{g}) \;\xrightarrow{}\; \operatorname{Out}(\mathfrak{g}) \;\xrightarrow{}\; 1</math>
{| class="wikitable"
 
|-
splits. In the complex simple case, this is a classical result,<ref>{{Harv |Fulton |Harris |1991 |loc = Proposition D.40}}</ref> whereas for real simple Lie algebras, this fact has been proven as recently as 2010.<ref name="JOLT">[http://www.heldermann.de/JLT/JLT20/JLT204/jlt20035.htm]</ref>
! mk_curve
 
! result
== Structure ==
|-
The [[Schreier conjecture]] asserts that Out(''G'') is always a [[solvable group]] when ''G'' is a finite [[simple group]]. This result is now known to be true as a corollary of the [[classification of finite simple groups]], although no simpler proof is known.
! -1000
 
| uniform speed, linearly increasing action
== Dual to center ==
|-
The outer automorphism group is [[duality (mathematics)|dual]] to the center in the following sense: conjugation by an element of ''G'' is an automorphism, yielding a map <math>\sigma\colon G \to \operatorname{Aut}(G).</math> The [[kernel (algebra)|kernel]] of the conjugation map is the center, while the [[cokernel]] is the outer automorphism group (and the image is the [[inner automorphism]] group). This can be summarized by the [[short exact sequence]]:
! 0
:<math>Z(G) \hookrightarrow G \overset{\sigma}{\to} \operatorname{Aut}(G) \twoheadrightarrow \operatorname{Out}(G).</math>
| uniform acceleration, linearly increasing speed
|-
! 1000
| uniform jerk, linearly increasing acceleration
|}


== Applications ==
These five parameters are configurable.<ref>[http://library.gnome.org/users/gnome-access-guide/stable/dtconfig-mousekeys.html.en GNOME Documentation Library, Configuring a Keyboard-Based Mouse]</ref>
The outer automorphism group of a group acts on [[conjugacy class]]es, and accordingly on the [[character table]]. See details at [[Character table#Outer automorphisms|character table: outer automorphisms]].


=== Topology of surfaces ===
==Enabling==
The outer automorphism group is important in the [[topology]] of [[surface]]s because there is a connection provided by the [[Dehn&ndash;Nielsen theorem]]: the extended [[mapping class group]] of the surface is the Out of its [[fundamental group]].
Under the [[X Window System]]s [[X.Org Server|Xorg]] and [[XFree86]] used on [[Unix-like]] systems such as [[Linux]], [[BSD]], and [[AIX]], MouseKeys (and MouseKeysAccel) is nominally (de)activated by Alt+LeftShift+Num Lock.<ref>The X Keyboard Extension: Library Specification, Library Version 1.0/Document Revision 1.1, X Consortium Standard, X Version 11 / Release 6.4, Keyboard Controls, 10.5.1, [http://cvsweb.xfree86.org/cvsweb/xc/doc/specs/XKB/XKBlib/allchaps.ps?rev=1.1&content-type=text/vnd.viewcvs-markup The MouseKeys Control]</ref> MouseKeys without acceleration (also known as plot mode) is sometimes available with Shift+NumLock. This is independent of the [[Window Manager]] in use and may be overridden by a [[configuration file]]. There are also various utilities to allow more precise control via user-configurable key bindings, such as [http://beesbuzz.biz/code/xmousekeys.php xmousekeys] and [http://www.semicomplete.com/projects/xdotool/ xdotool].


==Puns==
MouseKeys for [[Apple Inc]]'s [[Mac OS X]] is enabled and configured via the [[Accessibility]]<ref>[http://www.apple.com/accessibility/macosx/physical.html Apple.com, Mac OS X, Accessibility]</ref> ([apple] => System Preferences => Accessibility => Mouse & Trackpad).
The term "outer automorphism" lends itself to [[pun]]s:
the term ''outermorphism'' is sometimes used for "outer automorphism",
and a particular [[Geometric group action|geometry]] on which <math>\scriptstyle\operatorname{Out}(F_n)</math> acts is called ''[[Out(Fn)#Outer space|outer space]]''.


==External links==
[[Microsoft]] changed the method of enabling between [[Windows 2000]],<ref>Microsoft.com, Accessibility Tutorials, Windows 2000, [http://www.microsoft.com/enable/training/windows2000/default.aspx Turning MouseKeys On and Off]</ref> [[Windows XP]] (added diagonal cursor movement and MouseKeysAccel),<ref>Microsoft.com, Accessibility Tutorials, Windows XP, [http://www.microsoft.com/enable/training/windowsxp/mousekeys.aspx MouseKeys: Control the Mouse Pointer Using the Numeric Keypad]</ref> and [[Windows Vista]].<ref>Microsoft.com, Accessibility Tutorials, Windows Vista, [http://www.microsoft.com/enable/training/windowsvista/mousekeys.aspx Control the mouse pointer with the keyboard (Mouse Keys)]</ref>
*[http://brauer.maths.qmul.ac.uk/Atlas/v3/ ATLAS of Finite Group Representations-V3]
(contains a lot of information on various classes of finite groups (in particular sporadic simple groups), including the order of Out(''G'') for each group listed.


==See also==
== See also ==
*[[Mapping class group]]
* [[FilterKeys]] feature
*[[Out(Fn)|Out(F<sub>n</sub>)]]
* [[StickyKeys]] feature
* [[Togglekeys]] feature
* [[On-screen keyboard]]


==References==
==References==
{{Refimprove|date=November 2009}}
{{Reflist}}
{{reflist}}
{{refbegin}}
{{refend}}


[[Category:Group theory]]
{{DEFAULTSORT:Mouse Keys}}
[[Category:Group automorphisms]]
[[Category:Computer accessibility]]
[[Category:Computing input devices]]
[[Category:User interface techniques]]
[[Category:Ergonomics]]

Revision as of 12:40, 12 August 2014

Mouse keys is a feature of some graphical user interfaces that uses the keyboard (especially numeric keypad) as a pointing device (usually replacing a mouse). Its roots lie in the earliest days of visual editors when line and column navigation was controlled with arrow keys (e.g., hjkl, ctl-esdx). Today, mouse keys usually refers to the numeric keypad layout standardized with the introduction of the X Window System in 1984.[1][2]

Layout

X window system MouseKeys default numpad layout
key action
Num Lock With Alt-Shift

Enable/Disable MouseKeys

8 cursor up
2 cursor down
6 cursor right
4 cursor left
7 cursor up and left
9 cursor up and right
3 cursor down and right
1 cursor down and left
/ select primary button
* select modifier button
- select alternate button
5 click selected button
+ double click selected button
0 depress selected button
. release selected button
Enter Enter Key

History

Historically, MouseKeys supported GUI programs when many terminals had no dedicated pointing device. As pointing devices became ubiquitous, the use of mouse keys narrowed to situations where a pointing device was missing, unusable, or inconvenient. Such situations may arise from the following:

  • precision requirements (e.g., technical drawing)
  • disabled user or ergonomics issues
  • environmental limits (e.g., vibration in car or plane)
  • broken equipment

MouseKeysAccel

X window system MouseKeysAccel trajectory
parameter meaning
mk_delay milliseconds between the initial key press and first repeated motion event
mk_interval milliseconds between repeated motion events
mk_max_speed steady speed (in action_delta units) applied each event
mk_time_to_max number of events (count) accelerating to steady speed
mk_curve ramp used to reach maximum pointer speed

The X Window System MouseKeysAccel control applies action (usually cursor movement) repeatedly while a direction key {1,2,3,4,6,7,8,9} remains depressed.[3] When the key is depressed, an action_delta is immediately applied. If the key remains depressed, longer than mk_delay milliseconds, some action is applied every mk_interval milliseconds until the key is released. If the key remains depressed, after more than mk_time_to_max actions have been applied, action_delta magnified mk_max_speed times, is applied every mk_interval milliseconds.

The first mk_time_to_max actions increase smoothly according to an exponential.

mk_curve result
-1000 uniform speed, linearly increasing action
0 uniform acceleration, linearly increasing speed
1000 uniform jerk, linearly increasing acceleration

These five parameters are configurable.[4]

Enabling

Under the X Window Systems Xorg and XFree86 used on Unix-like systems such as Linux, BSD, and AIX, MouseKeys (and MouseKeysAccel) is nominally (de)activated by Alt+LeftShift+Num Lock.[5] MouseKeys without acceleration (also known as plot mode) is sometimes available with Shift+NumLock. This is independent of the Window Manager in use and may be overridden by a configuration file. There are also various utilities to allow more precise control via user-configurable key bindings, such as xmousekeys and xdotool.

MouseKeys for Apple Inc's Mac OS X is enabled and configured via the Accessibility[6] ([apple] => System Preferences => Accessibility => Mouse & Trackpad).

Microsoft changed the method of enabling between Windows 2000,[7] Windows XP (added diagonal cursor movement and MouseKeysAccel),[8] and Windows Vista.[9]

See also

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

  1. The X Keyboard Extension: Protocol Specification
  2. The X Keyboard Extension: Library Specification
  3. The X Keyboard Extension: Library Specification, Library Version 1.0/Document Revision 1.1, X Consortium Standard, X Version 11 / Release 6.4, Keyboard Controls, 10.5.2, The MouseKeysAccel Control
  4. GNOME Documentation Library, Configuring a Keyboard-Based Mouse
  5. The X Keyboard Extension: Library Specification, Library Version 1.0/Document Revision 1.1, X Consortium Standard, X Version 11 / Release 6.4, Keyboard Controls, 10.5.1, The MouseKeys Control
  6. Apple.com, Mac OS X, Accessibility
  7. Microsoft.com, Accessibility Tutorials, Windows 2000, Turning MouseKeys On and Off
  8. Microsoft.com, Accessibility Tutorials, Windows XP, MouseKeys: Control the Mouse Pointer Using the Numeric Keypad
  9. Microsoft.com, Accessibility Tutorials, Windows Vista, Control the mouse pointer with the keyboard (Mouse Keys)